android查4g ip地址,Native.js 获取4G网络/数据网络 IP地址

这段代码展示了如何将Java代码用于获取4G网络IP地址转换成JavaScript实现。主要涉及网络接口、InetAddress和Inet4Address类的使用,通过遍历网络接口和其地址来找到非环回的IPv4地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Native.js 获取4G网络/数据网络 IP地址

Java代码

/**

* @Title: getIpAddress

*

* @Description: 获取设备ip地址

*

* @return String

*/

public static String getIpAddress() {

try {

for (Enumeration enNetI = NetworkInterface.getNetworkInterfaces(); enNetI.hasMoreElements();) {

NetworkInterface netI = enNetI.nextElement();

for (Enumeration enumIpAddr = netI.getInetAddresses();enumIpAddr.hasMoreElements();) {

InetAddress inetAddress = enumIpAddr.nextElement();

if (inetAddress instanceof Inet4Address && !inetAddress.isLoopbackAddress()) {

return inetAddress.getHostAddress();

}

}

}

} catch (SocketException e) {

e.printStackTrace();

}

return "";

}

转换为JS代码

// 导入网络接口类

var NetworkInterface = plus.android.importClass("java.net.NetworkInterface")

// 导入InetAddress类

var InetAddress = plus.android.importClass("java.net.InetAddress")

// 导入Inet4Address类

var Inet4Address = plus.android.importClass("java.net.Inet4Address")

// 定义变量,获取网络接口

var networkInterface = NetworkInterface.getNetworkInterfaces()

// 遍历网络接口

while (plus.android.invoke(networkInterface, 'hasMoreElements')) {

var networkInterfaceElement = plus.android.invoke(networkInterface, 'nextElement')

// 获取各个网络接口的地址

var inetAddresses = plus.android.invoke(networkInterfaceElement, 'getInetAddresses')

// 遍历从各个网络接口获取的地址

while (plus.android.invoke(inetAddresses, 'hasMoreElements')) {

var inetAddressesElement = plus.android.invoke(inetAddresses, 'nextElement')

// 判断获取的地址不是环回接口的地址并且属于IPv4地址

if (!plus.android.invoke(inetAddressesElement, 'isLoopbackAddress') && inetAddressesElement instanceof Inet4Address) {

console.log(plus.android.invoke(inetAddressesElement, 'getHostAddress'))

// 获取主机地址

this.ipAddress = plus.android.invoke(inetAddressesElement, 'getHostAddress')

}

}

}

参考优快云

问答

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值