код для определения собственного IP-адреса Android-устройства?

1

Я хочу узнать о коде, который может определить адрес Ip ​​и имя клиента Android для Android-устройства, чтобы использовать этот адрес и имя Ip в нашем приложении.

Может ли кто-нибудь помочь мне... Спасибо в Advance.

Теги:
ip

2 ответа

7

Это сообщит вам ваш собственный IP-адрес Andress, если вы запустите его на своем Android-телефоне.

try{
      InetAddress ownIP=InetAddress.getLocalHost();
      System.out.println("IP of my Android := "+ownIP.getHostAddress());
      }catch (Exception e){
      System.out.println("Exception caught ="+e.getMessage());
      }

Если вы хотите узнать IP-адрес любого клиента, который связывается с вашим приложением,

Socket socket = serverSocket.accept();  // accept connection                                            


                    System.out.println("Remote IP:"+socket.getInetAddress());

                    System.out.println("Remote Port:"+socket.getPort());                
  • 0
    тогда ты не принял мой ответ?
  • 2
    он отображает адрес обратной связи как IP-адрес хоста.
4
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()) {
                    return inetAddress.getHostAddress().toString();
                }
             }
         }
     } catch (SocketException ex) {
         Log.e(LOG_TAG, ex.toString());
     }

     return null;
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню