Ich entwickle alle meine Sites auf einem OS 10.5.8 Server mit PHP und MySQL, und ich habe meine /etc/hosts
und httpd.conf
Dateien so konfiguriert, dass meine Site unter example.dev
in jedem Browser auf diesem Rechner angezeigt wird / p>
Ich habe vor kurzem Androids Software-Entwicklungskit installiert, mit dem ich Stylesheets für das mobile Webkit entwickeln und testen möchte - aber ich kann nicht auf meine lokal gehosteten Projekte im Android-Browser zugreifen.
Dies ist sinnvoll, da es das gesamte Android-Betriebssystem emuliert, aber gibt es eine Problemumgehung? Oder kann ich nur Projekte testen, die sich irgendwo im Internet befinden, vielleicht in einem versteckten Verzeichnis?
Jemand hat vorgeschlagen, dass ich meine /etc/resolv.conf
-Datei bearbeite, aber ich weiß nicht, wie ich eine lokal gehostete Domain in resolv.conf
richtig formatiere - ich habe versucht, die folgenden Varianten zu testen, und nichts funktioniert:
Oder ...
%Vor%In meiner hosts-Datei ist es wie folgt eingerichtet:
%Vor%Sie sollten die IP-Adresse Ihres Macs in der URL des Android-Emulators verwenden können und so auf Ihre Websites zugreifen können. Stellen Sie sicher, dass das Web Sharing unter Sharing in den Systemeinstellungen aktiviert ist und dass Ihre Firewall die Adresse nicht blockiert.
Alternativ können Sie die IP-Adresse des virtuellen Hosts (10.0.2.2) verwenden. Dies wird immer Ihrem Host-Mac zugeordnet, wenn Sie den Emulator ausführen.
Wenn Sie aus irgendeinem Grund keine IP-Adressen in Ihren URLs verwenden möchten, können Sie die IP-Adresse Ihres Macs jedem beliebigen Namen zuordnen, indem Sie in Ihrem Emulator die Datei / etc / hosts ändern. Um dies zu tun, müssen Sie zunächst das Dateisystem read-write machen und dann die IP-Adresse Ihres Macs und den von Ihnen gewünschten Hostnamen zu / etc / hosts hinzufügen:
%Vor%Dann greifen Sie in Ihrem Browser auf " Ссылка " zu. Du solltest gut gehen.
Ich hatte das gleiche Problem. @ Emmbys Lösung klang so, als sollte sie genau das tun, was ich brauchte, aber seltsamerweise schien es nicht zu funktionieren. Die Befehle liefen, aber die Hosts-Datei später zu sehen, zeigte, dass sie nicht aktualisiert wurde.
Aber ich habe ein bisschen mehr Nachforschungen angestellt, und ich habe herausgefunden, was das Problem ist.
Das Kernproblem, das ich hatte, war, dass das Betriebssystem des emulierten Geräts bereits 100% des verfügbaren Speichers belegt hat, sodass die Änderungen nicht in die hosts-Datei geschrieben wurden. Es wurde jedoch keine Fehlermeldung ausgegeben.
Meine Vermutung ist, dass der Grund dafür, dass @ emmby dieses Problem nicht hatte, darin besteht, dass das Problem von der Version von Android abhängt, die Sie auf den Emulator stellen. Einige Versionen geben Ihnen möglicherweise etwas Freiraum, mit dem Sie arbeiten können.
Wenn Sie dieses Problem haben, besteht die Lösung darin, den Emulator mit mehr Speicher zu starten. Dies kann mit dem Argument -partition-size
für den Befehl emulator
wie folgt geschehen:
Sie können dann den Befehl adb -e shell
verwenden und die Datei entsprechend der Antwort von @ emmby bearbeiten.
Wenn jedoch das Bearbeiten der Datei aus der Shell ein Problem darstellt, bietet adb
auch die Möglichkeit, sie vom Emulator auf das Host-Betriebssystem zu kopieren, lokal zu bearbeiten und wieder zu kopieren. Es befasst sich auch mit dem Remount. Du würdest es so machen:
Bearbeiten Sie es anschließend in Ihrem bevorzugten Editor.
Richte dann den Emulator erneut in den Lese- / Schreibmodus ein und kopiere die Datei zurück:
%Vor% Beachten Sie, dass der Emulator beim Neustart immer auf den Standardzustand zurückgesetzt wird. Dies könnte eine bessere Lösung sein, da Sie die bearbeitete Datei lokal behalten können, sodass Sie die adb pull
- und Bearbeitungsschritte nicht wiederholen müssen jedes Mal; Sie können den Emulator einfach starten, machen Sie remount
und push
, und Sie sind im Geschäft.
Ich hoffe, das hilft.
Ich habe mit einem ähnlichen Problem gearbeitet, indem ich die Computer-IP-Adresse im lokalen Netzwerk verwendet habe.
Folgen Sie den Anweisungen auf den folgenden zwei Links:
Ссылка (Achten Sie darauf, auf die Tabs zwischen zu achten die IP-Adresse und der Hostname und der Zeilenumbruch am Ende der Datei) Ich habe eine "[SDKLOCATION] / platform-tools / adb ziehen / system / etc / hosts WHATEVERHOSTFILENAME", um das Format der ursprünglichen hostfile zuerst sehen und dann verwenden, um es zurück zu schieben.
Und dann: Ссылка
Funktioniert für mich - viel Glück !!
Gemäß android docs können Sie auf Ihr System 127.0.0.1 IP mit 10.0.2.2 zugreifen auf Ihrem Emulator, der ein spezieller Alias für Ihre Host-Loopback-Schnittstelle ist.
Tags und Links android virtualhost localhost