博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android网络类型判断(2g、3g、wifi)
阅读量:5975 次
发布时间:2019-06-19

本文共 1821 字,大约阅读时间需要 6 分钟。

hot3.png

判断网络类型是wifi,还是3G,还是2G网络,对不同

的网络进行不同的处理,现将判断方法整理给大家,以供参考

 

说明:下面用到的数据移动2G,联通2G,联通3G,wifi我都已经测试过,暂时手上

没有电信的卡,所以没有验证,有电信手机的同事,可以验证一下,验证后将结果

发送给大家。

 

 ConnectivityManager connectMgr = (ConnectivityManager) this

        .getSystemService(Context.CONNECTIVITY_SERVICE);

 

 NetworkInfo info = connectMgr.getActiveNetworkInfo();

 

一、判断网络是否是wifi,在判断之前一定要进行的非空判断,如果没有任何网络

连接info ==null

info.getType() == ConnectivityManager.TYPE_WIFI

 

二、判断是否是手机网络

info !=null && info.getType() ==  ConnectivityManager.TYPE_MOBILE

 

手机网络进行详细区分:

 

info.getSubtype() 这里使用 getSubtype(),不是 getType(),getType()返回的

是0,或者1,是区分是手机网络还是wifi

 

info.getSubtype()取值列表如下:

 

         * NETWORK_TYPE_CDMA 网络类型为CDMA

         * NETWORK_TYPE_EDGE 网络类型为EDGE

         * NETWORK_TYPE_EVDO_0 网络类型为EVDO0

         * NETWORK_TYPE_EVDO_A 网络类型为EVDOA

         * NETWORK_TYPE_GPRS 网络类型为GPRS

         * NETWORK_TYPE_HSDPA 网络类型为HSDPA

         * NETWORK_TYPE_HSPA 网络类型为HSPA

         * NETWORK_TYPE_HSUPA 网络类型为HSUPA

         * NETWORK_TYPE_UMTS 网络类型为UMTS

 

联通的3G为UMTS或HSDPA,移动和联通的2G为GPRS或EDGE,电信的2G为CDMA,电信

的3G为EVDO

 

android获取手机的ip地址

复制代码

private String getPhoneIp() {        try {              for (Enumeration
 en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {                  NetworkInterface intf = en.nextElement();                  for (Enumeration
 enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {                      InetAddress inetAddress = enumIpAddr.nextElement();                      if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet4Address) {                      //if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet6Address) {                          return inetAddress.getHostAddress().toString();                      }                  }              }          } catch (Exception e) {          }          return "";     }

转载于:https://my.oschina.net/u/246578/blog/505026

你可能感兴趣的文章
asp.net远程调用WebService的两种方法
查看>>
ASP.NET生命周期详解(转)
查看>>
javascript 闭包
查看>>
Yii 1.1.4发布,高性能的PHP框架
查看>>
自定义光标样式
查看>>
Jquery的集合方法EACH()
查看>>
[转]HOWTO do Linux kernel development - take 3 (中文版)
查看>>
Avoid incorrect Silverlight XAP file caching
查看>>
ModifyStyle函数的用法
查看>>
VIM的高级使用
查看>>
我用的archlinux+slim+openbox+tint2+feh+thunar+gnome-terminal+gvim+fcitx
查看>>
关于博客
查看>>
c++ using namespace std; - 海明威 - 博客园
查看>>
Oracle 解锁表
查看>>
关于如何评价洗牌质量的猜想
查看>>
忍受比自由更重要
查看>>
Oracle学习<一>
查看>>
《IT项目管理》读书笔记(9) —— 项目沟通管理
查看>>
从零开始--系统深入学习android(实践-让我们开始写代码-Android框架学习-2.service)...
查看>>
怎么强制限制div宽度
查看>>