获取/设置android IPv4地址

时间:2015-05-13 08:47:31

标签: android dhcp static-ip-address

我需要一个简单的助手类来在API 18及更高版本上完成这些工作:

1-设置/获取设备的静态IP地址。

2设置/获取设备的dhcp ip地址。

foreach ($_GET as $key => $value)   // STORE $_GET VALUES
        {
            $this->_get[$key] = $this->escape($value);
        }

我找到了不同的解决方案来做到这一点,但有些方法已被弃用,我很困惑,女巫解决方案更好。有人可以帮我用最好,更标准的方式填写方法吗?

1 个答案:

答案 0 :(得分:0)

This SO thread无法帮助您获取getDhcpIpV4Parameters

My Utils方法/代码检索我发现的第一个IPV4地址是:

public static String getStaticIpV4Address() {
        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();
                    // for getting IPV4 format
                    String ipv4; //= inetAddress.getHostAddress().toString();
                    if ( (!inetAddress.isLoopbackAddress()) 
                            && (InetAddressUtils.isIPv4Address(ipv4 = inetAddress.getHostAddress())) ) {
                        return ipv4;
                    }
                }
            }
        } catch (SocketException ignored) {}

        return null;
    }