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;
}
}Android 判断网络类型(WIFI、MOBILE、NONE)
最新推荐文章于 2024-08-13 00:15:00 发布
本文介绍了一个用于检测Android设备网络状态的Java工具类。该工具类提供了获取当前网络状态的方法,能够判断设备是否连接到移动数据或Wi-Fi网络,并通过枚举返回相应的网络类型。使用此工具类需要具备ACCESS_NETWORK_STATE权限。
1608

被折叠的 条评论
为什么被折叠?



