次のコードを試すことができます。
public String getLocalIpAddress() {
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();
if (!inetAddress.isLoopbackAddress()) {
String ip = Formatter.formatIpAddress(inetAddress.hashCode());
return ip;
}
}
}
} catch (SocketException ex) {
//
}
return null;
}
アプリケーションがネットワーク ソケットを開くことを許可するために、次のアクセス許可を追加することを忘れないでください。
<uses-permission android:name="android.permission.INTERNET" />