181 votes

Android Studio - Émulateur Android connecté en Wifi sans Internet

J'ai passé une journée entière à essayer différentes solutions flottant dans SO et d'autres endroits mentionnés pour activer le wifi sur l'émulateur Android mais sans succès. Quelqu'un peut-il m'aider à comprendre comment activer Internet sur mon émulateur Android ?

J'ai Nexus 5X API 27 et la cible étant Android 8.1 (Google Play) et Nexus 5 API P et la cible étant Android 7.1.1.

Je pense qu'il devrait y avoir un moyen d'activer l'Internet sur lui, sinon tout l'intérêt de fournir un wifi virtuel sur l'émulateur semble être un gaspillage.

Je suis sur mac OS HS 10.13.4 directement connecté à mon routeur sans proxy.

J'ai même essayé de supprimer tous les AVD, de les réinstaller. J'ai même essayé d'avoir installé le dernier Pixel 2 avec Oreo Android 8.1

Rien ne semble fonctionner. Quelqu'un a-t-il été confronté à ce problème et a-t-il trouvé une solution ?

Toute aide serait la bienvenue

Merci, Vikram

Mise à jour : Lorsque je connecte mon ordinateur à travers mon téléphone en tant que hotspot wifi, l'émulateur a internet à travers le wifi, mais il échoue lorsque je connecte mon ordinateur à mon routeur domestique.

0 votes

N'a-t-il pas déjà été activé ?

0 votes

J'ai exactement le même problème. Il fonctionne via le hotspot de mon téléphone mais pas via mon routeur. Quel type de routeur avez-vous ? Tout fonctionnait bien avant quand j'avais un routeur AVM mais maintenant j'ai un routeur Telekom Speedport et ça ne marche plus.

1 votes

@TheBaj : Le type de routeur peut ne pas être le problème ici ou peut être mais je ne sais pas. Essayez la solution ci-dessous qui a fonctionné pour moi.

267voto

Raman Sahasi Points 14959

Vous trouverez ci-dessous les solutions pour Windows et Mac, mais des solutions similaires fonctionneront sur n'importe quel système d'exploitation :

  1. Sur Windows

    • Ouvrir Centre de réseau et de partage et cliquez sur le courant Connexion
    • Cliquez sur Propriétés
    • Cliquez deux fois sur Protocole Internet version 4 (TCP/IPv4)
    • Définissez les serveurs DNS préférés et alternatifs comme (Capture d'écran ci-dessous) :

      8.8.8.8
      8.8.4.4
  2. Sur Mac

    • Aller à Paramètres > Réseau > Avancé... > DNS
    • Supprimez toutes les entrées que vous avez là et ajoutez ces deux entrées (Capture d'écran ci-dessous) :

      8.8.8.8
      8.8.4.4

      <em>Note : Pour les utilisateurs Mac, si le champ des entrées est désactivé et que vous ne pouvez pas le modifier, cliquez sur l'icône "Verrou" en bas de la fenêtre et entrez le mot de passe pour pouvoir effectuer des modifications.</em>

Redémarrez l'émulateur, et cela devrait se résoudre :

Captures d'écran :

  1. Windows

Android emulator not connecting to internet solution on windows

  1. Mac

Android emulator not connecting to internet solution on a mac


Edit : C'est le correctif pour une situation où le wifi de l'émulateur a changé le DNS pour un DNS qui ne fonctionne pas. Bien que cela fonctionne la plupart du temps, il peut y avoir d'autres raisons qui ne sont pas résolues par cette solution.

0 votes

J'ai rencontré ce problème en utilisant les émulateurs Android 8 Oreo (AVD) sur Android studio. L'un ou l'autre drapeau cli et le changement de DNS à l'échelle du système l'ont résolu.

0 votes

N.B. Il est obligatoire d'éteindre puis de redémarrer l'émulateur. Si vous redémarrez l'émulateur à partir des paramètres d'Android, cela ne fonctionnera pas.

2 votes

Ceci, ainsi qu'un démarrage à froid de l'AVD, a réglé le problème.

174voto

Juangui Jordán Points 1078

Ma solution sous Mac OSX 10.13

J'ai lu que cela était dû à l'activation de la carte LAN et du WiFi, et certaines approches me semblaient compliquées, j'ai donc simplement essayé ceci, et cela a fonctionné :

  • J'ai désactivé le WiFi sur mon ordinateur portable.
  • J'ai éteint l'émulateur.
  • J'ai effectué un démarrage à froid sur l'émulateur (AVD Manager -> actions sur l'émulateur -> Cold Boot Now).
  • Après un redémarrage avec le WiFi de l'ordinateur portable désactivé, l'émulateur a montré une connexion WiFi correcte (l'émulateur montre toujours AndroidWifi mais est connecté à l'Internet de mon ordinateur portable). Le symbole WiFi ressemble maintenant à ceci : Symbole WiFi connecté )
  • J'ai ensuite activé le WiFi sur mon ordinateur portable et tout a fonctionné.

3 votes

Cela a fonctionné et j'ai fait un "wipe data" avant le "cold boot" et j'ai dû configurer le WiFi dans l'émulateur, il y a eu une notification en glissant vers le bas sur l'écran d'accueil.

7 votes

Ça a marché pour moi ! Je viens de faire un démarrage à froid avec le wifi désactivé et ça a bien marché.

3 votes

C'est la meilleure réponse.

46voto

Vikram Mahishi Points 486

@TheBaj : J'ai compris le problème avec ceci et l'ai fixé. Le problème est que lorsque vous êtes connecté par le routeur, l'androidwifi dans votre émulateur utilise les paramètres et les paramètres du DNS à quelque chose d'autre que 8.8.8.8 qui est le google DNS (je suppose que c'est une sorte de paramètre obligatoire pour l'androidwifi pour obtenir l'accès à Internet). Mais si je change le DNS dans mes paramètres réseau, le plugin google-services qui récupère vos dépendances, en particulier celles qui sont téléchargées à partir de jcenter() ne sera pas téléchargé et donc votre synchronisation échouera, ce qui fera échouer votre construction.

L'astuce consiste donc à configurer votre DNS google (8.8.8.8) dans vos paramètres réseau après les paramètres par défaut de votre routeur - cette partie se charge de télécharger les dépendances à partir de jcenter() et la synchronisation et la construction réussissent.

Maintenant, lancez votre émulateur avec emulator @Nexus_5X_API_27 -dns-server 8.8.8.8 à partir du terminal qui force l'émulateur à utiliser 8.8.8.8 comme DNS et l'émulateur aura Internet.

Je travaille sur une application react-native, donc pour moi Android studio est inutile et j'ai configuré mon bashrc pour lancer les différents émulateurs comme suit,

   function emunex5 {
    emulator @Nexus_5X_API_27 -dns-server 8.8.8.8
 }

  function emunex6 {
    emulator @Nexus_6_API_27 -dns-server 8.8.8.8
  }

  function emupix {
    emulator @Pixel_XL_API_27 -dns-server 8.8.8.8
   }

Donc, à partir d'un terminal, je lance l'émulateur de mon choix, puis j'exécute la compilation sur un autre terminal qui exécute mon application sur l'émulateur lancé et MON FAUX EMULATEUR A L'ACCES INTERNET :)

Essayez ceci et j'espère que cela vous aidera.

Merci, Vikram

0 votes

Le terme "émulateur" n'est pas reconnu comme une commande interne ou externe, un programme exploitable ou un fichier batch.

1 votes

@Bhupesh voir %HOME%\AppData\Local\Android\Sdk\emulator - c'est là que je l'ai trouvé.

9voto

Marcus J.Kennedy Points 308

J'ai résolu le problème avec google dns sur la carte réseau. 8.8.8.8 et 8.8.4.4

Android Emulator wifi connected with no internet solution for windows

0 votes

J'espère que cela est signalé comme un bogue quelque part, car cela a également pris du temps pour moi.

0 votes

Il fonctionne comme un charme

8voto

Hiren Patel Points 15583

Eh bien, j'ai fait comme ça :

Étapes à suivre pour ajouter un proxy manuel :

  1. Aller à Paramètres de l'émulateur
  2. Aller à Proxy onglet
  3. Définir Configuration manuelle du proxy
  4. Ajoutez votre Nom de l'hôte & Numéro de port
  5. Cliquez sur Appliquer

Capture d'écran de référence :

enter image description here

J'espère que cela vous aidera.

2 votes

Comment trouver votre nom d'hôte ?

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