public class NetCheckUtil {
public static boolean checkNet(Context context) {
// 判断是否具有可以用于通信渠道
boolean mobileConnection = isMobileConnection(context);
boolean wifiConnection = isWIFIConnection(context);
if ( mobileConnection == false && wifiConnection == false ) {
// 没有网络
return false;
}
return true;
}
/**
* 判断手机接入点(APN)是否处于可以使用的状态
*
* @param context
* @return
*/
public static boolean isMobileConnection(Context context) {
ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if ( networkInfo != null && networkInfo.isConnected() ) {
return true;
}
return false;
}
/**
* 判断当前wifi是否是处于可以使用状态
*
* @param context
* @return
*/
public static boolean isWIFIConnection(Context context) {
ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if ( networkInfo != null && networkInfo.isConnected() ) {
return true;
}
return false;
}
}
直接调用
if(NetCheckUtil.checkNet(context)){
//网络可用
}else{
//网络不可用
}