要获取 Android 设备的 wlan0 接口的 IP 地址,可以使用以下代码:
fun getIPAddress(interfaceName: String): String? {try {val interfaces: List<NetworkInterface> = Collections.list(NetworkInterface.getNetworkInterfaces())for (intf in interfaces) {if (intf.getName().equals(interfaceName)) {val addresses: List<InetAddress> = Collections.list(intf.getInetAddresses())for (address in addresses) {if (!address.isLoopbackAddress() && address.address.size === 4) {return address.getHostAddress()}}}}} catch (e: java.lang.Exception) {e.printStackTrace()}return null}
通过 getIPAddress 方法传入接口名称(这里是 “wlan0”)来获取相应接口的 IP 地址。使用 NetworkInterface.getNetworkInterfaces() 获取所有网络接口,并循环遍历找到指定名称的接口。然后获取该接口的所有地址,并找到非回环地址且地址长度为 4 的 IPv4 地址。