Получение 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 на уникальный идентификатор, тип устройства и координаты, если это возможно.

Другие вопросы по тегам