2

アプリケーションがWifiネットワークに接続されているときにIPアドレスを取得しようとしていますが、その方法がよくわかりません。

RadioInfoを見てきましたが、関数getIPAddress(int apnId)があります。これは正しいですか?

WLANInfoも調べましたが、IP関連の機能がないようです。

誰でもこれを手伝ってくれますか?

4

1 に答える 1

1

klyubin さんが書きました:

[...] (文書化された動作に依存しているため) 最善の解決策は、WiFi 経由で udp ソケット (または TCP サーバー ソケット) を開き、その IP アドレスを照会することです。もう 1 つのハックは、getAccessPointNumber を使用して「MagicRudyAPN.rim」の APN ID を取得し、getIPAddress を使用してその IP アドレスを照会することです。MagicRudyAPN.rim は、WiFi ネットワークへの IP トンネルにアクセス/アドレス指定するための仮想/偽の APN のようです。

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);
    }
}

于 2009-12-07T05:20:16.747 に答える