web-dev-qa-db-fra.com

L'émulateur Android ne peut pas accéder à Internet

Je sais que des questions similaires ont déjà été posées, mais mon problème n'est nouveau qu'après l'installation d'Android Studio 2.3, dernière version en mars 2017. J'ai plusieurs années d'expérience dans le développement d'applications Android et je n'ai jamais rencontré ce problème auparavant. Après la mise à niveau vers la version 2.3 d'Android Studio, mon émulateur n'est plus en mesure d'accéder à Internet. J'ai même désinstallé/réinstallé Android Studio 2.3 à partir de zéro et créé un nouvel émulateur, et j'obtiens toujours la même erreur. Ce n'est pas un problème d'application. Je ne peux même pas accéder à Internet à partir de Chrome et je n'avais pas ce problème la semaine dernière. Le message que je reçois indique que l'adresse DNS du serveur est introuvable. DNS_PROBE_FINISHED_BAD_CONFIG. La seule chose qui a changé sur mon ordinateur au cours de la semaine dernière est la nouvelle version d'Android plus éventuellement mise à jour vers Windows 10. Et oui, mon ordinateur a accès à Internet. Vous trouverez ci-dessous une image de mon émulateur lorsque j'essaie d'utiliser Chrome pour rechercher "Google" .  emulator with error message

102
John Moore

Pour moi, je viens de changer l'adresse DNS de mon réseau en 8.8.8.8 et j'ai travaillé:

Comment le faire sur un MacOSX:

  • Ouvrir "Préférences Système"
  • Cliquez sur "Réseau"
  • Sélectionnez le réseau auquel votre ordinateur est connecté et cliquez sur "Avancé"
  • Sélectionnez "DNS", sélectionnez le bouton "+", tapez "8.8.8.8"
  • Sélectionnez "Ok" et "Appliquer"


Comment faire sous Windows et Linux:

https://developers.google.com/speed/public-dns/docs/using


Après cela, fermez l’émulateur et redémarrez-le. 

99
Ana Paula

J'ai trouvé une solution temporaire sur un ancien thread Stack Overflow à Mise à niveau vers SDK 2.3 - Désormais, aucun émulateur ne dispose d'une connectivité . Notez que ce fil parle d’Android SDK 2.3 et non d’Android Studio 2.3. Le problème semble être que l'émulateur ne peut pas trouver le DNS que mon ordinateur utilise actuellement et la solution temporaire consiste à démarrer l'émulateur à partir de la ligne de commande et à spécifier le serveur DNS. Quel que soit le problème rencontré à l’époque, il doit réapparaître dans la dernière version d’Android Studio.

La solution temporaire décrite ci-dessous résout le problème de l'accès de l'émulateur à Internet. Cependant, cela ne résout pas le problème rencontré lors de la tentative d'exécution d'Android Device Monitor. Cela ferait quand même que l'émulateur se déconnecte comme décrit ci-dessus.

Notez qu'il existe deux fichiers nommés "emulator.exe" dans le sdk - un sous sdk\tools et un autre sous sdk\emulator. Cela pourrait fonctionner en dessous, mais j'utilise celui sous sdk\emulator.

La première étape consiste à localiser le SDK. En supposant un nom d'utilisateur "jdoe" et une installation par défaut d'Android Studio sur Windows, le SDK est probablement 

C:\Users\jdoe\AppData\Local\Android\sdk

La deuxième étape consiste à déterminer le nom de l’AVD (émulateur) que vous souhaitez exécuter. La commande 

C:\Users\jdoe\AppData\Local\Android\sdk\emulator\emulator.exe -list-avds

montrera les noms de vos AVD. Sur mon ordinateur, il n’en affiche qu’un, Nexus_5X_API_25.

Pour démarrer l'émulateur à partir de la ligne de commande avec un serveur DNS spécifié, utilisez l'une des méthodes suivantes:

C:\Users\jdoe\AppData\Local\Android\sdk\emulator\emulator.exe -avd Nexus_5X_API_25 -dns-server 8.8.8.8

Dans ce cas, 8.8.8.8 est un serveur de noms de domaine public Google.

Les commandes ci-dessus peuvent être raccourcies si vous créez les variables d'environnement appropriées et modifiez votre variable d'environnement PATH, mais je vous déconseille de le faire.

83
John Moore

Après avoir essayé plusieurs de ces solutions, j'allais simplement supprimer mon AVD actuel et le refaire, mais lorsque j'ai cliqué sur la flèche vers le bas de l'AVD, j'ai remarqué «Cold Boot Now».

 AVD Menu

Sur un coup de tête, j'ai essayé ça. Et voilà que mon émulateur a à nouveau une connexion Internet!

42
Timothy Winters

La mise à jour de mon adaptateur WIFI pour résoudre DNS sur 8.8.8.8 a résolu le problème pour moi. Cela a commencé à se produire après une mise à jour Apple qui avait foiré l'adresse DNS.

 enter image description here

36
Joao Gavazzi

J'ai rencontré le même problème après la mise à niveau. Lors de l'ouverture du navigateur Chrome dans l'émulateur, google.com n'est plus accessible. 

J'ai trouvé un post sur SO suggérant que le problème venait de l'émulateur qui tentait d'utiliser une carte réseau déconnectée. Pour moi, le problème se produisait lorsque je me connectais à un réseau local. La désactivation de l'adaptateur LAN sans fil a résolu le problème. 

Pour désactiver l'adaptateur:

  1. Accédez à Connexions réseau
  2. Trouver l'adaptateur
  3. Faites un clic droit et choisissez désactiver
22
bmul

Ouvrez simplement le AVD Manager et effacez les données de cet émulateur pour moi.

13
Hashim Zahid

Je suis également confronté au même problème, mais j'essaie de le résoudre en utilisant divers messages. Aujourd'hui j'ai découvert ce problème. Votre configuration d'ordinateur est probablement le problème, pas Android Studio et l'émulateur Android.

Le problème provient de votre configuration réseau. Juste configurez le serveur DNS principal sur 8.8.8.8, ce qui résoudra le problème.

12
Swarup Daptari

Cela m'est arrivé lorsque l'émulateur a gelé et que j'ai dû arrêter le processus. L'icône du signal montrait toujours le petit "x" comme dans la capture d'écran et aucune connexion Internet n'était réussie.

La seule chose qui a aidé a été la désinstallation et la réinstallation de l'émulateur (pas les images AVD)

Dans Android Studio:

Outils-> Android -> Gestionnaire de SDK Décochez "Android Emulator" et laissez-le désinstaller puis vérifiez à nouveau et laissez-le réinstaller.

 Screenshot

9
patrickf

Ouvrez l'émulateur Android et accédez au Contrôles étendus . Ensuite, allez dans le paramètre => proxy (Tab) et décochez la case "Utiliser le paramètre de proxy HTTP sur les stud Android".

8
AminRah

Cela a été un problème pour moi la dernière fois que l'émulateur s'est mis à jour et que la désactivation d'autres adaptateurs réseau l'a corrigé. Maintenant, il est à nouveau apparu, mais le seul adaptateur activé est un adaptateur Wi-Fi unique et je n'ai donc rien à désactiver. 

Le problème n'est réapparu qu'après avoir mis à jour via une invite les outils d'émulateur la version 26.1.1. J'ai désinstallé et réinstallé l'émulateur via l'onglet de mise à jour de SDK Tools et heureusement, la seule option lors de la nouvelle installation consiste à installer 26.0.3 (ce qui semble fonctionner correctement).

La morale de l’histoire est de méfiez-vous des mises à jour d’émulateur .

7
Daniel Wilson

J'ai résolu en effaçant les données d'AVD Manager  

5
Blasco73

Pour moi, le problème a été causé lorsque j'ai pris mon ordinateur portable à la maison sans redémarrer l'émulateur. D'après ce que j'ai lu, lorsque l'émulateur démarre, il lit les paramètres DNS de votre PC et les utilise. Lorsque j'étais sur mon réseau domestique, les paramètres DNS de mon travail étaient défaillants.
Donc voilà. Le simple redémarrage de l'émulateur a résolu mon problème.

4
smithygreg

si le navigateur Android peut accéder à Internetvous pouvez exécuter l’émulateur depuis terminalby cette commande 

allez dansSDKpath alors 

$/tools/emulator -avd Nexus_5X_API_23 -netdelay none -netspeed full

ça résout ton problème internet ...

4
Man

Après 10 jours de problèmes, je viens de tout supprimer de C:\Android\.Android\ et de tous les AVD créés. Maintenant, Internet semble bien fonctionner. 

3
Sparx it solutions

Rappel: la connexion Internet Android Emulator ne fonctionne pas si vous activez un système VPN sur votre ordinateur. 

3
s__ale

J'ai eu le même problème sur Windows 10. Je suis juste allé au Network & internet settings> Change adapter options> right-click on Wi-Fi and chose properties> Chose Internet protocol version 4 in the list and clicked properties> Turned on the "Use the following DNS server addresses" and filled the first part with "8.8.8.8" address. Problème résolu!

2
Hasani

Recréer simplement l'émulateur avec une autre API cible a fonctionné pour moi

2
Faheem

Je vais avoir Visual Studio 2017, et ce simple clic suffit à résoudre le problème d'Internet pour l'émulateur Android.

 enter image description here 

1
HO LI Pin

J'avais le même problème et j'ai résolu les étapes suivantes: -

Aller au réglage de l'émulateur, puis aller à 

paramètre-> Proxy-> Configurez-le manuellement ou utilisez la coche pour utiliser le simulateur de proxy HTTP Android Studio.

1
Naveen rana

Je suis sur Android studio 3.1 et c'est ce qui est arrivé… .. résolu en redémarrant le serveur adb 

$ adb kill-server
$ adb start-server

J'espère que ça aide. Je vous remercie

1
surga

J'ai rencontré le même problème sur mon MAC. Après avoir tout essayé, j'ai finalement supprimé le dossier /Users/Philippe/.Android et crée un nouvel émulateur.

1
Phil

J'ai une solution simple et permanente pour ce problème dans Windows.

Aller à réseau et internet option->  enter image description here

cliquez sur l'option Etherenet ou wifi (pour laquelle vous êtes connecté) ->  enter image description here

Cliquez sur l'option change adapter ->  enter image description here

Faites un clic droit sur le réseau pour lequel vous vous êtes connecté .  enter image description here

Une boîte de dialogue s'ouvre et il suffit de cliquer sur l'option Internet protocal version (TCP/IPv4).  enter image description here

Une autre boîte de dialogue s'ouvrira et le premier ensemble de l'adresse IP (Conserver tel quel) sera négligé et le bouton radio de sera utilisé. Utilisez les adresses de serveur DNS suivantes: et entrez 8.8.8.8 dans Preferred Serveur DNS: et 8.8.4.4 dans Serveur DNS secondaire:  enter image description here

Maintenant, vous pouvez ouvrir votre émulateur à tout moment et vous aurez accès à Internet dans les émulateurs Android.

1
Deepak N

Avait le même problème avec mon émulateur, fait tout ce qui précède, mais rien n'a marché . Changer la passerelle par défaut dans mon Panneau de configuration -> Centre Réseau et partage -> Paramètres de connexion au réseau local de: 192.168.1.119 à 192.168.1.1 a fonctionné avec moi… .. Je ne sais pas trop comment cette adresse IP fonctionne, mais cela permettra peut-être à quelqu'un de gagner du temps et de réduire les frustrations.

0
bhavya

Pour moi sur OSX, c'était à cause de l'utilisation d'une solution VPN tierce ... Elle installe une sorte de connexion réseau que les AVD et Genymotion ne pouvaient pas acheminer. Je devais le désinstaller pour que cela fonctionne correctement. A bien fonctionné sur certains réseaux et pas sur d’autres ... c’était très bizarre ..

0
kenyee

Même Connectivité réseau problème pour moi dans émulateur Android V 7.1.1 , puis j'ai diminué la Version Android en dessous 7.1.1 dans mon Android Emulator son travail bien.

0
shyam sundar

Peut-être que vous définissez un proxy pour Android Studio et que le proxy ne fonctionne pas. Essayez sans proxy.

0
user6022289

J'avais aussi cela et je l'ai résolu en créant un nouveau périphérique virtuel d'émulateur Android et en choisissant Nexus 4 api 27. Avant de créer l'api de périphérique Pixel 28, il ne fonctionnait même pas après avoir recréé le périphérique. J'ai donc essayé une configuration totalement différente et Android Emulator dispose d'une connexion Internet, comme prévu. D'autres solutions n'ont pas fonctionné pour moi, mais je n'ai pas tout essayé.

0
Renetik

Astuces de pro: utiliser AVD avec Dnsmasq sous Linux

Pour comprendre, lisez Configurer la mise en réseau d’Android Emulator à partir d’Android Studio.

Le bouclage du périphérique émulé est 127.0.0.1 et le bouclage hôte est accessible depuis le périphérique émulé à partir de 10.0.2.2.

Au démarrage, le périphérique émulé définit son serveur de noms DNS en choisissant ceux de l'hôte dans /etc/resolv.conf.

Mais le fait est que, si vous utilisez dnsmasq, you setnameserver 127.0.0.1in/etc/resolv.conf`, le périphérique émulé va exécuter sa propre boucle où rien ne s'exécute au lieu de la boucle de l'hôte sur laquelle un serveur DNS est en cours d'exécution.

Pour résoudre ce problème, ajoutez -dns-server lorsque vous exécutez AVD à partir de la CLI.

Par exemple:

  • Cloudflare DNS: ~/Android/Sdk/emulator/emulator -avd Nexus_9_API_23 -dns-server 1.1.1.1
  • Dnsmasq de l'hôte: ~/Android/Sdk/emulator/emulator -avd Nexus_9_API_23 -dns-server 1.0.2.2
0
noraj

Les émulateurs avec Android 9+ fonctionnaient pour moi, mais Android 7 ne se connectait pas à Internet.

Mon bureau utilise un pare-feu d’application Little Snitch. Je l'ai éteint et Android 7 a fonctionné. Probablement une bonne idée de vérifier vos pare-feu.

0
Peter Hollingsworth

Pour moi, le problème était que mon ordinateur était connecté au VPN. Une fois que je me suis déconnecté, cela a commencé à fonctionner dans l'émulateur.

0
Koustuv Ganguly