手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >android实现获取有线和无线Ip地址的方法
android实现获取有线和无线Ip地址的方法
摘要:本文实例讲述了android实现获取有线和无线Ip地址的方法。分享给大家供大家参考。具体如下:做android的开发时,遇到了获取有线ip地...

本文实例讲述了android实现获取有线和无线Ip地址的方法。分享给大家供大家参考。具体如下:

做android的开发时,遇到了获取有线ip地址的问题.不多说 上代码!

for (Enumeration<NetworkInterface> en = NetworkInterface .getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); if (intf.getName().toLowerCase().equals("eth0") || intf.getName().toLowerCase().equals("wlan0")) { for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress()) { ipaddress = inetAddress.getHostAddress().toString(); if(!ipaddress.contains("::")){//ipV6的地址 return ipaddress; } } } } else { continue; } }

分析:

先看这段代码:

复制代码 代码如下:

intf.getName().toLowerCase().equals("eth0") || intf.getName().toLowerCase().equals("wlan0")

这里表示:仅过滤无线和有线的ip. networkInterface是有很多的名称的 比如sim0,remt1.....等等.我不需要用到就直接过滤了

再看这段:

复制代码 代码如下:

if(!ipaddress.contains("::")){//ipV6的地址

这里表示: 过滤掉ipv6的地址.不管无线还是有线 都有这个地址, 我这边显示地址大体是:fe80::288:88ff:fe00:1%eth0 fe80::ee17:2fff:fece:c0b4%wlan0 一般都是出现在第一次循环.第二次循环就是真正的ipv4的地址.

希望本文所述对大家的Android程序设计有所帮助。

【android实现获取有线和无线Ip地址的方法】相关文章:

Android开发之SQLite的使用方法

Android编程实现擦除Bitmap中某一块的方法

Android判断包名和类名是否存在的方法

Android 获取正在运行的任务和服务的小例子

android中处理各种触摸事件的方法浅谈

Android界面刷新的方法分享

Android中 动态改变对话框值的方法

Android实现多线程断点下载的方法

android开发环境遇到adt无法启动的问题分析及解决方法

android 获取屏幕像素大小的正确方法

精品推荐
分类导航