Verizon のネットワークに接続されている HTC 信じられないほどの IP アドレスを見つけるにはどうすればよいですか? もう 1 つの質問ですが、セルラー ネットワークでアプリを実行するには、アプリに変更を加える必要がありますか? これまで、アプリはローカル Wi-Fi ネットワークに接続された Nexus One で実行されていました。
ありがとう。
Verizon のネットワークに接続されている HTC 信じられないほどの IP アドレスを見つけるにはどうすればよいですか? もう 1 つの質問ですが、セルラー ネットワークでアプリを実行するには、アプリに変更を加える必要がありますか? これまで、アプリはローカル Wi-Fi ネットワークに接続された Nexus One で実行されていました。
ありがとう。
モバイル ネットワーク経由で IP を確認するには、次のコマンドを実行します。
ifconfig rmnet0
または「Android Status」のようなアプリケーションが便利です。市場から入手してください。
内部 IP アドレスを取得するには、次のコード スニペットを使用できます。
Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
while (networkInterfaces.hasMoreElements()) {
NetworkInterface networkInterface = networkInterfaces.nextElement();
Enumeration<InetAddress> inetAddresses = networkInterface.getInetAddresses();
while (inetAddresses.hasMoreElements()) {
InetAddress inetAddress = inetAddresses.nextElement();
byte[] address = inetAddress.getAddress();
}
}
注: これにより、プライベート ネットワークの IP アドレスが返されます。パブリック IP アドレスが必要な場合は、STUN を使用する必要があります (jSTUN を試してください)。
それが役立つことを願っています!
IP アドレス情報を取得するには、この例を見てください。CDMA の微調整が必要な場合があります。
Mobile n/w で動作させるために何も変更する必要はありません
NetworkInterface.getNetworkInterfaces(); を使用してから、addresses = intf.getInetAddresses(); を使用できます。すべてのインターフェイスのすべての IP アドレスを列挙します。PDP に関連付けられたアドレスを探しています。
それはうまくいくはずです。私は現在、よりきちんとした方法を探しています。