获取手机当前的联网状态2G/3G/4G/WIFI
2017-06-29 09:53
381 查看
记录一个获取手机当前联网状态的方法,可以当作工具直接使用,比较方便。
private String getNetType(Context context) {
String type = "";
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
if (info == null) {
type = "null";
} else if (info.getType() == ConnectivityManager.TYPE_WIFI) {
type = "wifi";
} else if (info.getType() == ConnectivityManager.TYPE_MOBILE) {
int subType = info.getSubtype();
if (subType == TelephonyManager.NETWORK_TYPE_CDMA || subType == TelephonyManager.NETWORK_TYPE_GPRS
|| subType == TelephonyManager.NETWORK_TYPE_EDGE) {
type = "2g";
} else if (subType == TelephonyManager.NETWORK_TYPE_UMTS || subType == TelephonyManager.NETWORK_TYPE_HSDPA
|| subType == TelephonyManager.NETWORK_TYPE_EVDO_A || subType == TelephonyManager.NETWORK_TYPE_EVDO_0
|| subType == TelephonyManager.NETWORK_TYPE_EVDO_B) {
type = "3g";
} else if (subType == TelephonyManager.NETWORK_TYPE_LTE) {// LTE是3g到4g的过渡,是3.9G的全球标准
type = "4g";
}
}
return type;
}
参考:http://blog.sina.com.cn/s/blog_5da93c8f0102vg21.html
private String getNetType(Context context) {
String type = "";
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
if (info == null) {
type = "null";
} else if (info.getType() == ConnectivityManager.TYPE_WIFI) {
type = "wifi";
} else if (info.getType() == ConnectivityManager.TYPE_MOBILE) {
int subType = info.getSubtype();
if (subType == TelephonyManager.NETWORK_TYPE_CDMA || subType == TelephonyManager.NETWORK_TYPE_GPRS
|| subType == TelephonyManager.NETWORK_TYPE_EDGE) {
type = "2g";
} else if (subType == TelephonyManager.NETWORK_TYPE_UMTS || subType == TelephonyManager.NETWORK_TYPE_HSDPA
|| subType == TelephonyManager.NETWORK_TYPE_EVDO_A || subType == TelephonyManager.NETWORK_TYPE_EVDO_0
|| subType == TelephonyManager.NETWORK_TYPE_EVDO_B) {
type = "3g";
} else if (subType == TelephonyManager.NETWORK_TYPE_LTE) {// LTE是3g到4g的过渡,是3.9G的全球标准
type = "4g";
}
}
return type;
}
参考:http://blog.sina.com.cn/s/blog_5da93c8f0102vg21.html
相关文章推荐
- Android端如何获取手机当前的网络状态,比如wifi还是3G, 还是2G, 电信还是联通,还是移动
- Android端如何获取手机当前的网络状态,比如wifi还是3G, 还是2G, 电信还是联通,还是移动
- Android端如何获取手机当前的网络状态,比如wifi还是3G, 还是2G, 电信还是联通,还是移动
- Android端如何获取手机当前的网络状态,比如wifi还是3G, 还是2G, 电信还是联通,还是移动
- Android端如何获取手机当前的网络状态,比如wifi还是3G, 还是2G, 电信还是联通,还是移动
- Android获取当前手机网络类型(2g、3g、4g、wifi)以及手机型号、版本号代码
- 获取Android当前网络类型(2g、3g、4g、wifi)以及手机型号、版本号
- 获取Android当前网络类型(2g、3g、4g、wifi)以及手机型号、版本号
- iOS获取网络状态,区分2G、3G、4G、WIFI,非reachability
- iOS获取设备网络状态,2G,3G,4G,wifi,非Reachability
- 根据状态栏获取网络状态,区分2G、3G、4G、WIFI
- 利用CoreTelephony获取用户当前网络状态(判断2G,3G,4G)
- Android中手机的网络状态(判断是否联网/3G/4G/WIFI)
- android 判断当前联网类型是2g,3g,4g,wifi还是其他
- iOS中利用CoreTelephony获取用户当前网络状态(判断2G,3G,4G) by徐文棋
- 获取网络状态ios(2G、3G、4G、Wifi)
- iOS获取当前网络类型(Wifi、2G、3G、4G)
- 获取手机品牌机型 手机运营商 以及数据流量类型 是2G还是3G,4G 和 获取手机当前网络类型
- iOS中利用CoreTelephony获取用户当前网络状态(判断2G,3G,4G)
- iphone最牛判断当前手机网络连接类型wifi-2G-3G-4G-5G