612 Stimmen

Wie verbinde ich mich mit meinem http://localhost Webserver vom Android Emulator aus?

Was kann ich im Android-Emulator tun, um ihn mit meiner Localhost-Webserver-Seite zu verbinden? http://localhost o http://127.0.0.1 ?

Ich habe es versucht, aber der Emulator nimmt meine Anfrage immer noch wie eine Google-Suche nach localhost auf, oder schlimmer noch, er sagt, dass er die Seite nicht gefunden hat, während mein Webserver normalerweise läuft.

3 Stimmen

Diese Frage bezieht sich auf das Android Emulator und hat Lösungen, die auf diesen Fall anwendbar sind allein . Wenn Sie dieses Problem bei der Verwendung eines physisches Android-Gerät sehen Sie bitte stattdessen stackoverflow.com/questions/4779963/

10voto

Rahul Tiwari Punkte 6423

Gemäß den Unterlagen:

10.0.2.2 - Spezieller Alias für Ihre Host-Loopback-Schnittstelle (z. B. 127.0.0.1 auf Ihrem Entwicklungsrechner)

siehe Emulator-Vernetzung für weitere Tricks zur Vernetzung von Emulatoren.

7voto

Guest Punkte 61

Für mein Mac OS Berg Lion Gerät:

http://10.0.2.2:8888

Funktioniert perfekt!

5voto

mostafa3dmax Punkte 937

Wenn Sie einen Android-Emulator verwenden:

Sie können sich über diese IPs mit Ihrem Pc localhost verbinden: 10.0.2.2:{port of your localhost} => Wenn Sie Ihren Maschinenport in xamp einstellen, müssen Sie diesen Port verwenden. In meinem Fall 10.0.2.2:2080

enter image description here

enter image description here

Sie können auch die IP Ihres Netzwerkadapters verwenden, indem Sie in CMD schreiben ipconfig und finden Sie die IP-Adresse Ihres Adapters:

enter image description here

enter image description here

Wenn der Emulator keine Verbindung zu diesen IPs herstellen kann, schließen Sie den Emulator und öffnen Sie ihn mit cold boot von AVD Manager :

enter image description here

Wenn Sie Genymotion verwenden:

Sie können sich über diese IP mit dem Rechner localhost verbinden: 10.0.3.2:{port number} Oder die IP-Adresse Ihres Adapters, wie ich oben erklärt habe: in meinem Fall : 192.168.1.3:2080

3voto

Hugh Jeffner Punkte 2876

Ich musste die IP-Adresse des Systemhosts für den Emulator "Nox App Player" herausfinden. So habe ich herausgefunden, dass sie lautet 172.17.100.2 .

  1. Installieren Sie den Android Terminal Emulator aus dem App Store
  2. Ausgabe ip link show um alle Netzwerkschnittstellen anzuzeigen. Von besonderem Interesse war die Schnittstelle eth1
  3. Ausgabe ifconfig eth1 Befehl, zeigt net als 172.17.100.15/255.255.255.0
  4. Beginnen Sie mit dem Pingen von Adressen, die bei 172.17.100.1 erhielt einen Treffer bei "172.17.100.2". Ich bin nicht sicher, ob eine Firewall stören würde, aber in meinem Fall war das nicht der Fall.

Vielleicht kann dies jemandem helfen, es für andere Emulatoren herauszufinden.

3voto

Serge Stroobandt Punkte 23731

Erlauben der PWA-Installation

Installieren Sie zunächst die Android-Debug-Bridge:

$ sudo apt install adb android-sdk-platform-tools-common

Starten Sie Ihren Android-Emulator wie gewohnt, z. B.:

$ ~/Android/Sdk/emulator/emulator -avd Pixel_3a_API_30_x86

Erst dann konfigurieren Sie eine Reverse-Proxy auf der Brücke des Android-Emulators, die die localhost HTTP-Anfragen an den entsprechenden Port (z. B. 8000) des localhost Server, der auf Ihrem Host-Computer läuft und umgekehrt:

$ adb reverse tcp:8000 tcp:8000

Eine progressive Webanwendung (PWA), die auf localhost:8000 oder 127.0.0.1:8000 installierbar sein und eine Verbindung zu seinem service-worker.js . Die PWA-Installation ist von der IP-Adresse aus nicht erlaubt. 10.0.2.2 .

Vorbehalt: adb reverse tcp:8000 tcp:8000 muss neu aufgelegt werden nach jede Android-Emulator-Evokation.

Daher ist eine Bash-Skript zum Starten eines Android-Emulators, gefolgt von einem Reverse-Proxy, würde folgendermaßen aussehen:

#!/usr/bin/env bash

$HOME/Android/Sdk/emulator/emulator -avd Pixel_3a_API_30_x86 > /dev/null 2>&1

adb reverse tcp:8000 tcp:8000

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X