Получение IP-адреса устройства Android при подключении к мобильной сети 3G
Когда я подключен к WiFi, я могу получить IP-адрес телефона Android.
Однако, когда в мобильной сети, такой как 3G-соединение, все еще возможно получить IP-адрес телефона Android?
Если да, пожалуйста, напишите код для того же.
2 ответа
Попробуй что-нибудь подобное
String ipAddress = null;
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()) {
ipAddress = inetAddress.getHostAddress().toString();
}
}
}
} catch (SocketException ex) {}
Мобильное устройство не имеет IP-адреса при просмотре через соединение 3G, вы получите IP-провайдер на код серверной стороны. Я рекомендую вам заменить ip на уникальный идентификатор, тип устройства и координаты, если это возможно.