简体   繁体   English

使用Android确定IP地址是STATIC还是DHCP?

[英]Determine if IP Address is STATIC or DHCP using Android?

I am working on android system application. 我正在研究android系统应用程序。 I would like to know if IP address is DHCP or STATIC. 我想知道IP地址是DHCP还是STATIC。

Do we have any android java class for this? 我们为此有任何android java类吗? Or is there any way to get it from sysfs like /sysfs/class/net/eth0 ? 还是有什么办法可以从sysfs获取它,例如/sysfs/class/net/eth0

I used this to check wether is DHCP or STATIC years ago, perhaps you can try it out, if it does not work I'll remove the answer. 几年前,我用它来检查是DHCP还是STATIC ,也许您可​​以尝试一下,如果它不起作用,我将删除答案。

WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo connectionInfo = wifiManager.getConnectionInfo();
List<WifiConfiguration> configuredNetworks = wifiManager.getConfiguredNetworks();
for (WifiConfiguration wificonf : configuredNetworks){
    if (wificonf.networkId == connectionInfo.getNetworkId()){
         if (wificonf.toString().toLowerCase().indexOf("DHCP".toLowerCase())>-1){
            //DHCP
        }else if(wificonf.toString().toLowerCase().indexOf("STATIC".toLowerCase())>-1){
            //STATIC
        }
            break;
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM