获取本机IP地址函数

来源:互联网 发布:snmp编程 交换机 编辑:程序博客网 时间:2024/05/29 07:06
private String getLocalIPAddress() throws SocketException   // for Android >= 4.0
{
    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() && (inetAddress instanceof Inet4Address))
            {
                return inetAddress.getHostAddress().toString();
            }
        }
    }
    
    return "null";
}


private String getLocalIPAddress() throws SocketException  // for Android <= 2.3
{
    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()))
            {
                return inetAddress.getHostAddress().toString();
            }
        }
    }
    
    return "null";
}
0 0