您的位置:首页 > 理论基础 > 计算机网络

Android 判断网络类型(WIFI、MOBILE、NONE)

2017-05-27 11:17 204 查看
public class NetworkUtil {
public static final int TYPE_NONE = -1;
public static final int TYPE_MOBILE = 0;
public static final int TYPE_WIFI = 1;

private NetworkUtil() {}

/**
* 获取网络状态
*
* @param context
* @return one of TYPE_NONE, TYPE_MOBILE, TYPE_WIFI
* @permission android.permission.ACCESS_NETWORK_STATE
*/
public static final int getNetWorkStates(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
if (activeNetworkInfo == null || !activeNetworkInfo.isConnected()) {
return TYPE_NONE;//没网
}

int type = activeNetworkInfo.getType();
switch (type) {
case ConnectivityManager.TYPE_MOBILE:
return TYPE_MOBILE;//移动数据
case ConnectivityManager.TYPE_WIFI:
return TYPE_WIFI;//WIFI
default:
break;
}
return TYPE_NONE;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息