ここで、AndroidタブレットのIPアドレスの取得に関する問題に直面しています。AndroidタブレットIPアドレス
私はタブレットのIPアドレスのために次のコードを一般的な方法で使用しています。
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
}
}
}
inetAddress.getHostAddressは()方法は、ASのIPアドレスを返すFE80 :: 9a4b:4aff:FE00:異なるフォーマットではなく122.xx.xxx.xxx 形式で、a6e1 。
Wifimanagerクラスを使用してタブレットのIPアドレスを取得すると、122.xx.xxx.xxxがこの形式で返されます。
しかし、一般的な方法を使用して、私はそれが間違ったフォーマットとして与える理由を知らない。
この問題でお手伝いしてもらえますか...
ありがとうございます。
私はアンドロイドAPIについてよく分かりませんが、AFAIK、fe80 :: 9a4b:4aff:fe00:a6e1は大きすぎてIPアドレスではありません。間違った方法を使っているようです。 – ArjunShankar