2013-10-15 9 views
9

Gibt es eine Möglichkeit, das Verhalten einer Hosts-Datei auf nicht gerootetem Android zu emulieren?Hosts-Datei auf nicht gerootetem Android emulieren

Ich muss eine Website auf Android testen. Ich komme über die IP-Adresse auf die Website, aber sie scheint auf eine URL umzuleiten, die auf dem Telefon nicht verfügbar ist. Gibt es also eine Möglichkeit, das Verhalten von Hosts-Dateien zu emulieren, um diese URL der richtigen IP-Adresse zuzuordnen?

Von der Suche habe ich festgestellt, dass die echte Hosts-Datei mit einem gerooteten Gerät bearbeitet werden kann, aber das ist derzeit keine Option für mich.

+0

das Gerät auf einem WiFi-Netzwerk von einem Access Point mit einem Firmware-sourced Einlochen, die Ihnen viele Konfigurationsoptionen (so etwas wie openWRT, DDWRT, usw.) es tun würde, gibt. Alternativ dazu ist der Emulator gerootet und gibt Ihnen auch die Möglichkeit, die Ansicht des externen Netzwerks über den Hostcomputer zu beeinflussen. –

Antwort

9

1) Sie können Desktop als Quelle oder Internet für Ihr Gerät verwenden. Und hier können Sie dnsmasq mit einigen nächsten Regeln verwenden (zB https://askubuntu.com/questions/53523/how-to-redirect-a-url-to-a-custom-ip-address) Sie müssen nur Internet zu Gerät über USB teilen.

2) Sie können auf Ihrem Gerät als dnsserver IP Ihres Computers in diesem Netzwerk einrichten. dann dieselben Aktionen mit dnsmasq

0

Sie können HTTP-Proxy auf WLAN-Präferenz des Geräts angeben. Auf diesem Proxy können Sie HTTP hacken und sagen, dass Sie die HTTP-Umleitungsantwort ändern müssen, um auf Ihren angepassten HTTP-Server umzuleiten. http://wiki.squid-cache.org/SquidFaq/ContentAdaptation sieht informativ aus.

Oder behalten Umleitung Antwort und umleiten die angegebene URL zu Ihrem benutzerdefinierten Server.

0

Sie können einen DNS-Server auf Ihrem Android-Gerät ausführen, wenn Sie sich nicht mit einem Desktop-Computer anlegen möchten. Ich habe einen im Play Store gefunden. Es erwähnt nicht, dass root benötigt wird oder nicht, also braucht es wahrscheinlich root nicht.

https://play.google.com/store/apps/details?id=com.icecoldapps.dnsserver

Grundsätzlich müssen Sie Ihren WLAN-Verbindungen DNS-Server auf 127.0.0.1 oder localhost (Android ermöglicht es, die leicht in den erweiterten Details einer Verbindung) und dann die App verwenden, um eine IP für die festlegen Host, den Sie ändern möchten.

Das ist es.