Obtener la dirección IP del equipo en un proyecto de Android utilizando java
Estoy usando ksoap2-android y necesito obtener la dirección IP usando java para que no tenga que escribirlo manualmente cada vez.
Lo que quiero decir con la dirección IP es, por ejemplo, si hago ipconfig usando el comando shell:
Sufijo DNS específico de la conexión. :
Link-local Dirección IPv6. . . . . : F0 :: ed2: e3bf: 8206: 44% 13
Dirección IPv4. . . . . . . . . . . : 192.168.1.107 <- ESTE
Máscara de subred . . . . . . . . . . . : 255.255.255.0
Puerta de enlace predeterminada . . . . . . . . . : 192.168.1.1
- Android itext usando fuentes de activos y texto utf-8
- Cómo puedo convertir un mapa de bits en formato PDF en android
- Enviar solicitud HTTP GET con el encabezado
- Dispositivo Android que no recibe el paquete de multidifusión
- ¿Android con maven? Apk desconocido
La cosa es desarrollar una aplicación android, y el emulador tiene un tipo diferente de IP que la de la máquina.
Necesito obtener la IP de la máquina, ¿cómo se puede hacer esto?
muchas gracias
- JAVA_HOME no válido cuando se crea con cordova
- ¿Mezclar dos corrientes audio en una sola corriente audio en android?
- Android Análisis de señal y algunos filtros
- OpenCV Android - edición de color usando CameraBridgeViewBase
- Necesidad de formatear moneda para TextView
- FQL Query para obtener cumpleaños de amigos de Facebook en los próximos 30 días con Android
- No se puede encontrar la clase de Android CalendarView
- (Retrofit) No se pudo localizar el convertidor para la aplicación de bloqueo de clase
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(tag, ex.toString()); } return ""; }
Para obtener el Ipaddress de su dispositivo Android, utilice este código.
WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); int ipAddress = wifiInfo.getIpAddress(); String ip = intToIp(ipAddress); public String intToIp(int i) { return ((i >> 24 ) & 0xFF ) + "." + ((i >> 16 ) & 0xFF) + "." + ((i >> 8 ) & 0xFF) + "." + ( i & 0xFF) ; }
Pruebe este enlace
http://www.droidnova.com/get-the-ip-address-of-your-device304.html
También puedes probar este comando adb shell netcfg
InetAddress iA=InetAddress.getLocalHost(); System.out.println(iA.getHostAddress());
Ver también
-
getHostAddress()
- La fuente de Android SDK de Android no se compilará con Eclipse Indigo
- ¿Con qué puedo reemplazar http métodos obsoletos?