Ich habe einen ganzen Tag damit verbracht, verschiedene Lösungen auszuprobieren, die in SO und anderen genannten Orten herumschwirren, um WLAN auf dem Android-Emulator zu aktivieren, aber ohne Erfolg. Kann mir jemand helfen, herauszufinden, wie ich das Internet auf meinem Android-Emulator aktivieren kann?
Ich habe Nexus 5X API 27 und das Ziel ist Android 8.1 (Google Play) und Nexus 5 API P und das Ziel ist Android 7.1.1.
Ich glaube, es sollte eine Möglichkeit geben, das Internet darauf zu aktivieren, sonst scheint der Sinn der Bereitstellung von virtuellem WLAN auf dem Emulator eine Verschwendung zu sein.
Ich bin unter Mac OS HS 10.13.4 ohne Proxy direkt mit meinem Router verbunden.
Ich habe sogar versucht, alle AVDs zu löschen und neu zu installieren. Ich habe sogar versucht, das neueste Pixel 2 mit Oreo Android 8.1 zu installieren
Nichts scheint zu funktionieren. Hat sich jemand diesem Problem gestellt und eine Lösung gefunden?
Jede Hilfe wäre eine große Hilfe
Danke, Vikram
Update: Wenn ich meinen Computer über mein Telefon als Hotspot-WLAN verbinde, verfügt der Emulator über WLAN über das Internet, schlägt jedoch fehl, wenn ich meinen Computer mit meinem Heimrouter verbinde.
quelle
Antworten:
Nachfolgend sind die Lösungen für Windows und Mac aufgeführt. Ähnliche Lösungen funktionieren jedoch auf jedem Betriebssystem:
Unter Windows
Stellen Sie die bevorzugten und alternativen DNS-Server wie folgt ein (Abbildung unten):
8.8.8.8 8.8.4.4
Auf dem Mac
Löschen Sie alle Einträge, die Sie dort haben, und fügen Sie diese beiden Einträge hinzu (Screenshot unten):
8.8.8.8 8.8.4.4
Hinweis: Wenn das Eingabefeld für Mac-Benutzer deaktiviert ist und Sie es nicht bearbeiten können, klicken Sie im unteren Bereich des Fensters auf das Symbol "Sperren" und geben Sie das Kennwort ein, um Änderungen vornehmen zu können
Starten Sie den Emulator neu und es sollte gelöst werden:
Screenshots:
Bearbeiten: Dies ist das Update für eine Situation, in der das WLAN des Emulators das DNS in ein nicht funktionierendes DNS geändert hat. Während dies die meiste Zeit funktioniert, kann es auch andere Gründe geben, die mit dieser Lösung möglicherweise nicht behoben werden können.
quelle
Meine Lösung mit Mac OSX 10.13
Ich habe gelesen, dass LAN-Karte und WLAN aktiviert sind, und einige Ansätze schienen mir kompliziert zu sein. Deshalb habe ich es einfach versucht und es hat funktioniert:
quelle
@ TheBaj: Ich habe das Problem damit herausgefunden und es behoben. Das Problem ist, wenn Sie über den Router verbunden sind, das AndroidWifi in Ihrem Emulator die Einstellungen verwendet und das DNS auf etwas anderes als 8.8.8.8 setzt, das das Google DNS ist (ich nehme an, dass dies eine obligatorische Einstellung für das Androidwifi ist, um Internet zu erhalten Zugriff). Wenn ich jedoch das DNS in meinen Netzwerkeinstellungen ändere, wird das Google-Services-Plugin, das Ihre Abhängigkeiten abruft, insbesondere die, von denen heruntergeladen
jcenter()
wird, nicht heruntergeladen, und daher schlägt Ihre Synchronisierung fehl, wodurch Ihr Build möglicherweise fehlschlägt.Der Trick besteht also darin, dass Sie Ihr Google DNS (8.8.8.8) in Ihren Netzwerkeinstellungen nach Ihren Standard-Router-Einstellungen konfiguriert haben. In diesem Teil werden die Abhängigkeiten heruntergeladen
jcenter()
und die Synchronisierung und Erstellung ist erfolgreich.Starten Sie nun Ihren Emulator mit einem
emulator @Nexus_5X_API_27 -dns-server 8.8.8.8
Befehl vom Terminal aus, wodurch der Emulator gezwungen wird, 8.8.8.8 als DNS zu verwenden, und der Emulator über Internet verfügt.Ich arbeite an einer reaktionsnativen App, daher ist Android Studio für mich unnötig und ich habe meinen Bashrc so konfiguriert, dass die verschiedenen Emulatoren wie folgt gestartet werden:
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 }
Von einem Terminal aus starte ich den Emulator meiner Wahl und starte dann den Build auf einem anderen Terminal, auf dem meine App auf dem gestarteten Emulator ausgeführt wird, und MY FREAKING EMULATOR HAT INTERNET-ZUGRIFF. :) :)
Probieren Sie es aus und ich hoffe, das hilft.
Danke, Vikram
quelle
%HOME%\AppData\Local\Android\Sdk\emulator
- hier habe ich es gefunden.Ich hatte das gleiche Problem und befolgte die folgenden Schritte, um es zu beheben.
Schritte:
quelle
Ich habe mit Google DNS auf Netzwerkadapter
8.8.8.8
und gelöst8.8.4.4
quelle
Löschen Sie Daten, indem Sie mit der rechten Maustaste auf die Liste der virtuellen Geräte klicken. Der Kaltstart funktioniert bei mir.
quelle
Nun, ich habe es so gemacht:
Schritte zum Hinzufügen eines manuellen Proxys:
Referenz-Screenshot:
Ich hoffe es hilft.
quelle
Für mich geholfen: Unter Mac OSX (Catalina für mich), wird das Problem durch die Tatsache, dass der Emulator nimmt automatisch die
nameserver
durch auf der Suche/etc/resolv.conf
und die erste Ernte, in meinem Fall, eine IPv6 - Adresse. QuelleBearbeiten Sie einfach die Datei (
$ sudo vi /etc/resolv.conf
) und verschieben Sie die IPv4-Adresse (192.168.1.1
in meinem Fall) als erste vor die IPv6-Adressen.Im Ernst, das war es. Von Demetrios Christopher
quelle
Vielleicht würde das jemandem helfen. Ich habe alle oben genannten Lösungen ausprobiert. Ändern von DNS, Kaltstart usw. Nach mehreren Stunden Versuch und Irrtum ging ich zu den offiziellen Dokumenten, in denen stand, dass der Emulator die DNS-Konfiguration übernimmt. des Host-Computers beim Booten des Emulators. Ich hatte VMWare auf meinem Computer installiert, auf dem einige Netzwerkadapter installiert sind. Also habe ich gerade die DNS-Konfiguration geändert. aller Adapter (einschließlich VMWare-Adapter) und Kaltstart meines Emulators. OMG, das Problem, das stundenlang nicht verschwunden zu sein schien, ist gerade richtig!
Was ich jetzt merkwürdig finde, ist, dass ich die DNS-Konfiguration zurückgeschaltet habe. von allen Adaptern auf Auto und Kaltstart meines Emulators wieder. Das WiFi funktioniert immer noch gut. Betriebssystem: Windows 10.
quelle
100% Arbeiten unter Windows 10
Android AVD wird mit Google DSN geliefert, das in Emulatoren konfiguriert ist. Wir müssen also die Netzwerkfreigabe für den Zugriff auf dieselbe festlegen.
Öffentliche DNS-IP-Adressen von Google Die öffentlichen DNS-IP-Adressen (IPv4) von Google lauten wie folgt:
8.8.8.8
8.8.4.4
Die öffentlichen DNS-IPv6-Adressen von Google lauten wie folgt:
2001: 4860: 4860 :: 8888 2001: 4860: 4860 :: 8844 Sie können entweder die Adresse als primären oder sekundären DNS-Server verwenden.
Mehr Info
Hier zeige ich zum Einstellen von v4 IP-Schritten
Hinweis: Wenn VPN aktiviert ist, funktioniert es nicht, Ihr VPN zu trennen
quelle
Unter Mac OS X (Catalina für mich) wird das Problem dadurch verursacht, dass der Emulator den Nameserver automatisch abruft, indem er auf /etc/resolv.conf schaut und den ersten auswählt, in meinem Fall eine IPv6-Adresse. Quelle: https://developer.android.com/studio/run/emulator-networking#dns
Bearbeiten Sie einfach die Datei (sudo vi /etc/resolv.conf) und verschieben Sie die IPv4-Adresse (in meinem Fall 192.168.1.1) an die erste Stelle vor den IPv6-Adressen. Im Ernst, das war es.
quelle
Unter macOS:
quelle
Unter Windows:
Nachdem ich einige Lösungen getestet hatte, fand ich meine durch Klicken auf den Abwärtspfeil auf der AVD, Option "Kaltstart jetzt". Nach dem Booten hatte Android Zugang zum Internet, so dass es für mich funktionierte.
quelle
Lösung für Windows:
emulator -avd Nexus_4_API_29 -gpu host -dns-server 8.8.8.8
. HierNexus_4_API_29
ist der Name Ihres Emulatorgeräts (die Geräteliste finden Sie in Android Studio -> AVD Manager). Dieser Befehl führt Ihr angegebenes Gerät aus und WIFI hat eine Internetverbindung.Hoffe das hilft.
quelle
Was hat bei mir funktioniert:
quelle
Wenn sich der WLAN-Spot geändert hat, starten Sie den Emulator einfach neu, damit der Emulator die Netzwerkeinstellungen vom DHCP-Dienst aktualisiert.
quelle
Das Zurücksetzen der Netzwerkeinstellungen auf dem Android Emulator behebt dieses Problem.
quelle
Ein einfacher Kaltstart funktionierte für mich, ohne dass andere Emulatoren gestartet oder der Speicher gelöscht werden mussten.
Schließen Sie einfach Ihren Emulator und wählen Sie die Option "Jetzt kalt starten" im Drop-Menü neben der Wiedergabetaste. Wenn Sie nicht nach einer der hier aufgeführten umfassenderen Optionen suchen, empfehle ich, immer mit der einfachsten Lösung zu beginnen.
Viel Glück!
quelle
Versuchen Sie möglicherweise, LAN zu verwenden, falls verfügbar. Das ist ein Zauber für mich ...
quelle
Für neue Suchbenutzer: Manchmal ist VPN Ihre Lösung. Eine Änderung der Netzwerkeinstellungen ist aufgrund von Netzwerkproblemen nicht immer möglich. Wenn Sie sich in IP-Adressen befinden, auf die Google für diese Regionen nicht reagiert, verwendet Ihre Lösung VPN. Verwenden Sie einen geeigneten VPN (einen VPN, mit dem Sie Ihr Android Studio aktualisieren können). Wenn Ihr VPN eingeschaltet ist, starten Sie Ihr AVD-Gerät ( Natürlich ist das API-Level Ihres Emulators wichtig, zum Beispiel habe ich kein Problem mit API 22, aber für API 28 muss VPN verwendet werden!). Dies war meine Erfahrung mit dem Android-Emulator-Internet.
quelle
Ändern Sie den Standort des Emulators und setzen Sie ihn auf Ihren aktuellen Standort.
Schritte : -
quelle