我正在尝试让我的应用程序在连接到 Wifi 网络时检索 IP 地址,但我不太确定如何完成。
我查看了 RadioInfo 并且有一个函数 getIPAddress(int apnId)。这是正确的吗?
我还查看了 WLANInfo,但似乎没有任何与 IP 相关的功能。
任何人都可以帮助我吗?
我正在尝试让我的应用程序在连接到 Wifi 网络时检索 IP 地址,但我不太确定如何完成。
我查看了 RadioInfo 并且有一个函数 getIPAddress(int apnId)。这是正确的吗?
我还查看了 WLANInfo,但似乎没有任何与 IP 相关的功能。
任何人都可以帮助我吗?
[...] 最好的解决方案(因为它依赖于记录的行为)是通过 WiFi 打开一个 udp 套接字(或 TCP 服务器套接字)并查询其 IP 地址。另一个技巧是使用 getAccessPointNumber 获取“MagicRudyAPN.rim”的 APN ID,然后使用 getIPAddress 查询其 IP 地址。MagicRudyAPN.rim 似乎是一个虚拟/假 APN,用于访问/寻址到 WiFi 网络的 IP 隧道。
int apnId = RadioInfo.getAccessPointNumber("MagicRudyAPN.rim");
byte[] ipByte = RadioInfo.getIPAddress(apnId);
String ip = "";
for (int i = 0; i < ipByte.length; i++) {
int temp = (ipByte[i] & 0xff);
if (i < 3)
ip = ip.concat("" + temp + ".");
else {
ip = ip.concat("" + temp);
}
}