Как получить IP-адрес мобильного телефона Android?

Я хочу точный IP-адрес устройства Android, когда он подключится к сети через Wi-Fi! Может ли кто-нибудь помочь мне, как получить IP-адрес, пока мобильный телефон подключен к сети и как получить адрес через про грамматически .. Введите описание изображения здесь

Я использовал это, и он работал!

WifiManager wm = (WifiManager) getSystemService(WIFI_SERVICE); String ip = Formatter.formatIpAddress(wm.getConnectionInfo().getIpAddress()); 

Ниже разрешений в файле манифеста.

 <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 

Вы можете использовать этот метод, чтобы IP-адрес устройства прошел true для IPv4 и false для IPv6

  public static String getIPAddress(boolean useIPv4) { try { List<NetworkInterface> interfaces = Collections.list(NetworkInterface.getNetworkInterfaces()); for (NetworkInterface intf : interfaces) { List<InetAddress> addrs = Collections.list(intf.getInetAddresses()); for (InetAddress addr : addrs) { if (!addr.isLoopbackAddress()) { String sAddr = addr.getHostAddress(); //boolean isIPv4 = InetAddressUtils.isIPv4Address(sAddr); boolean isIPv4 = sAddr.indexOf(':')<0; if (useIPv4) { if (isIPv4) return sAddr; } else { if (!isIPv4) { int delim = sAddr.indexOf('%'); // drop ip6 zone suffix return delim<0 ? sAddr.toUpperCase() : sAddr.substring(0, delim).toUpperCase(); } } } } } } catch (Exception ex) { } // for now eat exceptions return ""; } 

Благодаря этому ans Как получить IP-адрес устройства?

Intereting Posts