-
public class NetworkUtils {
-
-
/**
-
* 网络是否可用
-
*
-
* @param activity
-
* @return
-
*/
-
public static boolean isNetworkAvailable(Context context) {
-
ConnectivityManager connectivity = (ConnectivityManager) context
-
.getSystemService(Context.CONNECTIVITY_SERVICE);
-
if (connectivity == null) {
-
} else {
-
NetworkInfo[] info = connectivity.getAllNetworkInfo();
-
if (info != null) {
-
for (int i = 0; i < info.length; i++) {
-
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
-
return true;
-
}
-
}
-
}
-
}
-
return false;
-
}
-
-
-
/**
-
* Gps是否打开
-
*
-
* @param context
-
* @return
-
*/
-
public static boolean isGpsEnabled(Context context) {
-
LocationManager locationManager = ((LocationManager) context
-
.getSystemService(Context.LOCATION_SERVICE));
-
List<String> accessibleProviders = locationManager.getProviders(true);
-
return accessibleProviders != null && accessibleProviders.size() > 0;
-
}
-
-
/**
-
* 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);
-
}
-
-
/**
-
* 判断当前网络是否是wifi网络
-
* if(activeNetInfo.getType()==ConnectivityManager.TYPE_MOBILE) {
-
*
-
* @param context
-
* @return boolean
-
*/
-
public static boolean isWifi(Context context) {
-
ConnectivityManager connectivityManager = (ConnectivityManager) context
-
.getSystemService(Context.CONNECTIVITY_SERVICE);
-
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
-
if (activeNetInfo != null
-
&& activeNetInfo.getType() == ConnectivityManager.TYPE_WIFI) {
-
return true;
-
}
-
return false;
-
}
-
-
/**
-
* 判断当前网络是否3G网络
-
*
-
* @param context
-
* @return boolean
-
*/
-
public static boolean is3G(Context context) {
-
ConnectivityManager connectivityManager = (ConnectivityManager) context
-
.getSystemService(Context.CONNECTIVITY_SERVICE);
-
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
-
if (activeNetInfo != null
-
&& activeNetInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
-
return true;
-
}
-
return false;
-
}
-
}
以上方法均通过测试,tv_result为自设定的TextView。
-
tv_result.append("网络是否可用:"+NetworkUtils.isNetworkAvailable(MainActivity.this)+"\n");
-
tv_result.append("GPS开关是否打开:"+NetworkUtils.isGpsEnabled(MainActivity.this)+"\n");
-
tv_result.append("是否为3G网络:"+NetworkUtils.is3G(MainActivity.this)+"\n");
-
tv_result.append("WIFI是否打开:"+NetworkUtils.isWifiEnabled(MainActivity.this)+"\n");
-
tv_result.append("是否为WIFI网络:"+NetworkUtils.isWifi(MainActivity.this)+"\n");
-