关于获取android的wifi-ip地址

简介:

2000元阿里云代金券免费领取,2核4G云服务器仅664元/3年,新老用户都有优惠,立即抢购>>>


阿里云采购季(云主机223元/3年)活动入口:请点击进入>>>,


阿里云学生服务器(9.5元/月)购买入口:请点击进入>>>,

 最近做项目时,出了点小问题,在博客中记录下。

      由于项目需要获取当前android系统的wifi-ip地址,习惯性的随手在网上一搜,找了段代码就用了,也测试了,可以正常获取,代码如下:

复制代码
 1 try {
 2     for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
 3         NetworkInterface intf = en.nextElement();
 4         for (Enumeration<InetAddress> enumIpAddr = intf
 5                 .getInetAddresses(); enumIpAddr.hasMoreElements();) {
 6             InetAddress inetAddress = enumIpAddr.nextElement();
 7             if (!inetAddress.isLoopbackAddress()) {
 8                 String ip = inetAddress.getHostAddress().toString();
 9             }
10         }
11     }
12 } catch (SocketException ex) {
13     ex.printStackTrace();
14 }
复制代码

 

结果项目交付的时候出问题了,客户那边怎么也用不了,结果对方用的是3G卡,那个IP地址被上面的代码一起获取出来了,导致出问题了。以上代码是获取wifi和3G网络ip地址的。

 

如果只获取WIFI的IP地址,代码如下:

复制代码
1         // 只获取wifi地址
2 WifiManager wifimanage = (WifiManager) getSystemService(Context.WIFI_SERVICE);//获取WifiManager  
3 //检查wifi是否开启  
4 if(wifimanage.isWifiEnabled()) { // 没开启wifi时,ip地址为0.0.0.0
5     WifiInfo wifiinfo= wifimanage.getConnectionInfo();  
6     String ip = intToIp(wifiinfo.getIpAddress());  
7 }  
复制代码

 

1 //将获取的int转为真正的ip地址,参考的网上的,修改了下  
2 private String intToIp(int i)  {
3     return (i & 0xFF)+ "." + ((i >> 8 ) & 0xFF) + "." + ((i >> 16 ) & 0xFF) +"."+((i >> 24 ) & 0xFF);
4 }

 

 


本文转自java豆子博客园博客,原文链接:http://www.cnblogs.com/error404/archive/2013/05/30/3108785.html,如需转载请自行联系原作者

相关文章
|
4天前
|
敏捷开发 Java 机器人
云效产品使用常见问题之打包后的Android应用获取下载地址失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4天前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
64 0
|
4天前
|
XML API Android开发
Android WIFI使用简述(上)
Android WIFI使用简述(上)
|
4天前
|
Android开发
Android 状态栏WiFi图标的显示逻辑
Android 状态栏WiFi图标的显示逻辑
31 0
|
3天前
|
Android开发
Android获取当前连接的wifi名称
Android获取当前连接的wifi名称
14 6
|
4天前
|
Android开发
android连接指定wifi
android连接指定wifi
18 0
|
4天前
|
Java Android开发
Android 9在连接以太网情况下 还能连接WiFi
Android 9在连接以太网情况下 还能连接WiFi
11 0
|
4天前
|
Android开发
Android12 ethernet和wifi共存
Android12 ethernet和wifi共存
20 0
|
4天前
|
Java Shell Android开发
Android11 有线网和wifi优先级设置
Android11 有线网和wifi优先级设置
17 0
|
4天前
|
Java Android开发 开发者
rk3399 android以太网和wifi共存
rk3399 android以太网和wifi共存
16 0
http://www.vxiaotou.com