78 votes

Comment faire pour obtenir l'Émulateur Android de l'adresse IP?

Je veux obtenir actuellement en cours d'exécution Android Emulateurs'adresse IP à l'aide de code. Comment peut-il être atteint?

167voto

Matthias Points 17181

Juste pour clarifier: à partir de votre application, vous pouvez tout simplement se référer à l'émulateur comme "localhost" ou 127.0.0.1.

Web trafic est acheminé par le biais de votre machine de développement, de sorte que l'émulateur IP externe est ce que l'IP a été attribuée à la machine par votre fournisseur d'accès. Le développement de la machine peut être atteint à partir de votre appareil à 10.0.2.2.

Puisque vous demandaient seulement à propos de l' émulateur de la propriété intellectuelle, qu'est-ce que vous essayez de faire?

37voto

Derek Points 507

Si vous ne voulez vraiment l'IP attribuée à votre émulateur:

adb shell
ifconfig eth0

Qui vous donnera quelque chose comme:

eth0: ip 10.0.2.15 mask 255.255.255.0 flags [up broadcast running multicast]

26voto

Marcin Gil Points 16951

Comme ceci:

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;
}

Vérifiez la documentation pour plus d'info: NetworkInterface.

20voto

Nikhil Agrawal Points 3687

Utilisez cette méthode, vous obtiendrez 100% de réponses correctes adresse ip de votre émulateur android

Pour obtenir l'adresse ip de yoor émulateur

Aller à la commande adb shell et tapez cette commande

adb shell
ifconfig eth0

enter image description here

Après l'exécution de cette commande, je suis

IP : 10.0.2.15

Masque : 255.255.255.0

Ce qui fonctionne pour moi . Je travaille également pour une application réseau.

10voto

mahbub_siddique Points 168

Si vous devez vous référer à votre ordinateur localhost, comme lorsque vous voulez l'émulateur client de communiquer avec un serveur en cours d'exécution sur la même machine, utiliser l'alias 10.0.2.2 à se référer à l'ordinateur hôte de l'interface de bouclage. À partir de l'émulateur du point de vue du localhost (127.0.0.1) se réfère à sa propre interface de bouclage.Plus de détails: http://developer.android.com/guide/faq/commontasks.html#localhostalias

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X