私のアプリでは、サーバーのIPをフェッチする必要があります。IPをフェッチするためのコードは
try {
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
InetAddress inetAddress = enumIpAddr.nextElement();
Log.v("","ip1--:" + inetAddress);
Log.v("", "ip2--:" + inetAddress.getHostAddress());
String ipv4;
if (!inetAddress.isLoopbackAddress() && InetAddressUtils.isIPv4Address(ipv4 = inetAddress.getHostAddress())) {
String ip = inetAddress.getHostAddress().toString();
Toast.makeText(getApplicationContext(), inetAddress., Toast.LENGTH_SHORT).show();
Log.v("","ip---::" + ip);
// return inetAddress.getHostAddress().toString();
return ipv4;
}
}
}
ただし、デバイスがネットワーク接続されたWi-Fiデバイスに接続されている場合は、ローカルアドレスを返します。ネットワークの親IPを取得する方法を教えてください。前もって感謝します...