安卓获取以太网IP地址

闲话不说,直接上代码:

public static String getLocalIpAddress() {  
        try {  
            for (Enumeration<NetworkInterface> en = NetworkInterface  
                    .getNetworkInterfaces(); en.hasMoreElements();) {  
                NetworkInterface intf = en.nextElement();  
                for (Enumeration<InetAddress> enumIpAddr = intf  
                        .getInetAddresses(); enumIpAddr.hasMoreElements();) {  
                    InetAddress inetAddress = enumIpAddr.nextElement();  
                    if (!inetAddress.isLoopbackAddress()) {
                    ipAddress = inetAddress.getHostAddress().toString();
                    if(!ipAddress.contains("::"))
                    return inetAddress.getHostAddress().toString();
                    }else
                    continue;
                }  
            }  
        } catch (SocketException ex) {  
            Log.e(LOGTAG, ex.toString());  
        }  
        return "GetHostIP Fail,Please clear the shareReference";  
    }


continue 很重要,不然会获得一个IPV6的地址,通过“::”将IPV6地址过滤掉。

阅读更多
个人分类: android
想对作者说点什么? 我来说一句

android获取wifi和Ethernet信息

2013年09月17日 4KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭