一、判断网络连接是否可用

public static boolean isNetworkAvailable(Context context) {           ConnectivityManager cm = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           if (cm == null) {           } else {       //如果仅仅是用来判断网络连接        //则可以使用 cm.getActiveNetworkInfo().isAvailable();              NetworkInfo[] info = cm.getAllNetworkInfo();               if (info != null) {                   for (int i = 0; i < info.length; i++) {                       if (info[i].getState() == NetworkInfo.State.CONNECTED) {                           return true;                       }                   }               }           }           return false;       }

下面的不仅可以判断,如果没有开启网络的话,就进入到网络开启那个界面,具体代码如下:

protected boolean CheckNetwork() {  // TODO Auto-generated method stub     boolean flag=false;     ConnectivityManager cwjManager=(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);     if(cwjManager.getActiveNetworkInfo()!=null)      flag=cwjManager.getActiveNetworkInfo().isAvailable();     if(!flag){      Builder b=new AlertDialog.Builder(this).setTitle("没有可用的网络").setMessage("请开启GPRS或WIFI网路连接");      b.setPositiveButton("确定",new DialogInterface.OnClickListener() {        public void onClick(DialogInterface dialog, int which) {     // TODO Auto-generated method stub     Intent mIntent=new Intent("/");     ComponentName comp=new ComponentName("com.android.settings","com.android.settings.WirelessSettings");     mIntent.setComponent(comp);     mIntent.setAction("android.intent.action.VIEW");     startActivity(mIntent);     }         }).setNegativeButton("取消", new DialogInterface.OnClickListener() {    public void onClick(DialogInterface dialog, int which) {     // TODO Auto-generated method stub     dialog.cancel();        }   }).create();      b.show();    }    return flag; }

用的时候可以这样用:

if(!CheckNetwork())         return;

二、判断GPS是否打开

public static boolean isGpsEnabled(Context context) {           LocationManager lm = ((LocationManager) context                   .getSystemService(Context.LOCATION_SERVICE));           List<String> accessibleProviders = lm.getProviders(true);           return accessibleProviders != null && accessibleProviders.size() > 0;       } 

下边这小段代码是用来判断手机的GPS服务是否为开启状态.如果是就提示用户GPS已经打开.

如果现在GPS 处于关闭状态,那么给用户一个提示, 然后打开GPS设置界面,让用户更改GPS为启动状态.

private void openGPSSettings(){LocationManager alm =(LocationManager)this.getSystemService( Context.LOCATION_SERVICE );if( alm.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER ) ){Toast.makeText( this, “GPS is already on”, Toast.LENGTH_SHORT ).show();}else{Toast.makeText( this, “Please turn on GPS”, Toast.LENGTH_SHORT ).show();Intent myIntent = new Intent( Settings.ACTION_SECURITY_SETTINGS );startActivity(myIntent);}}

初始化GPS设置

private void initGPS(){LocationManager locationManager=(LocationManager) this.getSystemService(Context.LOCATION_SERVICE);//判断GPS模块是否开启,如果没有则开启if(!locationManager.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER)){Toast.makeText(this, "GPS is not open,Please open it!", Toast.LENGTH_SHORT).show();Intent intent=new Intent(Settings.ACTION_SECURITY_SETTINGS);startActivityForResult(intent,0);}else {Toast.makeText(this, "GPS is ready", Toast.LENGTH_SHORT);}}

三、判断WIFI是否打开

public static boolean isWifiEnabled(Context context) {           ConnectivityManager mgrConn = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           TelephonyManager mgrTel = (TelephonyManager) context                   .getSystemService(Context.TELEPHONY_SERVICE);           return ((mgrConn.getActiveNetworkInfo() != null && mgrConn                   .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel                   .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);       }

四、判断是否是3G网络

 public static boolean is3rd(Context context) {           ConnectivityManager cm = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           NetworkInfo networkINfo = cm.getActiveNetworkInfo();           if (networkINfo != null                   && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {               return true;           }           return false;       }

五、判断是wifi还是3g网络,用户的体现性在这里了,wifi就可以建议下载或者在线播放。

 public static boolean isWifi(Context context) {               ConnectivityManager cm = (ConnectivityManager) context                       .getSystemService(Context.CONNECTIVITY_SERVICE);               NetworkInfo networkINfo = cm.getActiveNetworkInfo();               if (networkINfo != null                       && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {                   return true;               }               return false;           }

更多相关文章

  1. android开启和关闭移动网络
  2. 判断Android手机是否联网
  3. Android(安卓)监听网络变化然后刷新页面
  4. Android(安卓)简单的网络变化监听器
  5. android AudioManager
  6. android 使用Java自带的HttpURLConnection 连接网络 读取返回数
  7. android 判断耳机是否插入的几种方式
  8. 【Android】判断某个AP是否在系统中存在(PackageManager与Package
  9. android post请求接口demo

随机推荐

  1. SqlServer将数据库中的表复制到另一个数
  2. sqlserver复制数据库的方法步骤(图文)
  3. SQL Server 数据库分区分表(水平分表)详细
  4. SQL Server索引超出了数组界限的解决方案
  5. SQL update select结合语句详解及应用
  6. SQL Server模糊查询的常见方法总结
  7. 由于系统错误 126 (SQL Server),指定驱动
  8. 关于喜忧参半的SQL Server触发器详解
  9. 浅析SQL Server的嵌套存储过程中使用同名
  10. SQL server高并发生成唯一订单号的方法实