android中判断网络连接是否可用

一、判断网络连接是否可用(返回true表示网络可用,false为不可用

 1 public static boolean checkNetworkAvailable(Context context) {
 2         ConnectivityManager connectivity = (ConnectivityManager) context
 3                 .getSystemService(Context.CONNECTIVITY_SERVICE);
 4         if (connectivity == null) {
 5             return false;
 6         } else {
 7             NetworkInfo[] info = connectivity.getAllNetworkInfo();
 8             if (info != null) {
 9                 for (int i = 0; i < info.length; i++) {
10                     if (info[i].getState() == NetworkInfo.State.CONNECTED) {
11                         NetworkInfo netWorkInfo = info[i];
12                         if (netWorkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
13                             return true;
14                         } else if (netWorkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
15                             return true;
16                         }
17                     }
18                 }
19             }
20         }
21         return false;
22     }

 

 

二、判断GPS是否打开

 

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

 

三、判断WIFI是否打开

 

1 public static boolean isWifiEnabled(Context context) {   
2         ConnectivityManager mgrConn = (ConnectivityManager) context   
3                 .getSystemService(Context.CONNECTIVITY_SERVICE);   
4         TelephonyManager mgrTel = (TelephonyManager) context   
5                 .getSystemService(Context.TELEPHONY_SERVICE);   
6         return ((mgrConn.getActiveNetworkInfo() != null && mgrConn   
7                 .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel   
8                 .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);   
9     } 

 

四、判断是否是3G网络

 

 1 public static boolean is3rd(Context context) {   
 2         ConnectivityManager cm = (ConnectivityManager) context   
 3                 .getSystemService(Context.CONNECTIVITY_SERVICE);   
 4         NetworkInfo networkINfo = cm.getActiveNetworkInfo();   
 5         if (networkINfo != null   
 6                 && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {   
 7             return true;   
 8         }   
 9         return false;   
10     }  

 

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

 

 1 public static boolean isWifi(Context context) {   
 2             ConnectivityManager cm = (ConnectivityManager) context   
 3                     .getSystemService(Context.CONNECTIVITY_SERVICE);   
 4             NetworkInfo networkINfo = cm.getActiveNetworkInfo();   
 5             if (networkINfo != null   
 6                     && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {   
 7                 return true;   
 8             }   
 9             return false;   
10         }

 

posted @ 2016-07-22 23:49  火龙裸先生  阅读(181)  评论(0编辑  收藏  举报