2010-09-07 4 views
-1

Mon téléphone a une adresse IP. Je voudrais savoir comment pourrais-je le récupérer? Après une recherche dans le web, je trouve que je peux obtenir que l'IP extérieure actuelle. (Je veux que l'ip-perm locale de mon téléphone)Obtenir l'ip interne de mon téléphone

Merci,

ray.

+1

Qu'est-ce que "local-perm"? (non natif) – WarrenFaith

+0

Désolé, je voulais dire: Internal-ip – rayman

Répondre

3

votre ip va changer avec chaque réseau auquel vous vous connectez - votre téléphone a une adresse mac - est ce que vous cherchez à trouver?

+0

Mon téléphone a ip interne qui ne change jamais, c'est ce dont j'ai besoin. – rayman

10

Une recherche rapide sur Google m'a envoyé ici: http://www.droidnova.com/get-the-ip-address-of-your-device,304.html

Lire les commentaires sur la façon d'utiliser le premier bloc de code pour obtenir l'adresse IP wifi (sur le réseau local, et non IP publique)

WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); 
WifiInfo wifiInfo = wifiManager.getConnectionInfo(); 
int ipAddress = wifiInfo.getIpAddress(); 

Modifier: L'émulateur semble retourner 0 sur wifiInfo.getIpAddress(), mais il fonctionne très bien sur un téléphone. Le code suivant convertit l'entier à une adresse ip:

String ipBinary = Integer.toBinaryString(ipAddress); 

//Leading zeroes are removed by toBinaryString, this will add them back. 
while(ipBinary.length() < 32) { 
    ipBinary = "0" + ipBinary; 
} 

//get the four different parts 
String a=ipBinary.substring(0,8); 
String b=ipBinary.substring(8,16); 
String c=ipBinary.substring(16,24); 
String d=ipBinary.substring(24,32); 

//Convert to numbers 
String actualIpAddress =Integer.parseInt(d,2)+"."+Integer.parseInt(c,2)+"."+Integer.parseInt(b,2)+"."+Integer.parseInt(a,2); 
+0

Salut, ce n'est pas ce que je voulais. c'est l'adresse IP externe. – rayman

+2

Je crois comprendre qu'il retournera l'adresse IP interne. Lire le commentaire "par Erren le 8 septembre 2009". Il semble avoir l'adresse IP interne, mais en arrière ou quelque chose comme ça. Il écrit "Comme mon adresse IP wlan est 10.83.35.80" et l'adresse qu'il récupère est 80.35.83.10. Je n'ai pas d'env env, donc je ne peux pas le vérifier moi-même. –

+0

@rayman: Kjetil est juste, vous devriez simplement suivre le lien comment – WarrenFaith

1

L'IP que je qualifierais « perm locale » est l'adresse IP localhost qui est toujours 127.0.0.1

L'IP d'un autre adaptateur réseau (Wifi dans ce cas) change en fonction du réseau

+0

Qui ne peut être: J'ai cet appareil: Opus One. et je vois ce ip: 10.55.170. * (ive caché le dernier nombre), et il ne change jamais. J'ai besoin de récupérer cette IP – rayman

+0

Quel type de réseau votre appareil utilise-t-il? Et comment obtenez-vous cette adresse IP? Tout ce que je sais, c'est qu'il n'y a que l'ip localhost et l'ip internet. – WarrenFaith

+0

J'utilise le réseau: iDEN. et mon ip local est statique, et je l'ai eu avec le téléphone. est-il un moyen de récupérer l'ip locale? – rayman

Questions connexes