Как я могу переслать свой IP-адрес localhost в эмулятор Android?

Я знаю, что можно перенаправить порт с моей машины разработки на эмулятор Android, но как это сделать? Я нашел решение на сайте android-разработчиков, но я не мог понять, как они имели в виду свои инструкции... У кого-нибудь есть четкие инструкции? Мое развитие машина работает под управлением Windows.

3 ответов


чтобы переслать порт с локального компьютера на эмулятор Android, необходимо включить Telnet. Это делается через Панель управления - > Программы и функции -> включить или выключить функции Windows -> прокрутите вниз до Telnet Client. Затем выберите его и нажмите Ok. Теперь из командной строки (с запущенным эмулятором) вы вводите telnet localhost "EmulatorPortNumber". "EmulatorPortNumber" можно найти в заголовке эмулятора, в моем случае это было 5554.

теперь вы увидите что-то похожее на это:

Android Console: type 'help' for a list of commands
OK

здесь вы хотите ввести как можно меньше опечаток, так как при применении backspace он повредит вашу команду и не примет ее. Команду вы должны использовать здесь redir. Это позволит вам выбрать из 3 подкоманд:

list    list current directions
add     add new redirection
del     remove existing redirection

теперь вам нужно добавить. Но вы не можете использовать его просто так. Набрав redir add даст вам следующую строку:

KO: bad redirection format, try (tcp|udp):hostport:guestport

это означает, что вы должны указать, какой порт вы хотите переадресация (TCP или UDP порт), какой порт на локальном компьютере вы хотите переадресовать (hostport) и какой порт вы хотите установить на эмуляторе (guestport). Итак, используя такую команду:

redir add udp:1337:12345

перенаправляет UDP-порт 1337 на локальном компьютере на порт 12345 на эмуляторе. Будьте осторожны при удалении перенаправления, так как они могут привести к сбою эмулятора. Вы также можете просто закрыть эмулятор, чтобы удалить любые редиректы. Это проще и безопаснее...


вы получаете доступ к компьютеру localhost as 10.0.2.2 от эмулятора. подробнее здесь


вы можете использовать команду adb forward для настройки произвольной переадресации портов-переадресации запросов на определенный порт хоста на другой порт на экземпляре эмулятора / устройства. Вот как вы настроили бы пересылку порта хоста 6100 в эмулятор / порт устройства 7100:

adb forward tcp:6100 tcp:7100

запустите веб-сервер NanoHTTPD на AVD а затем выполните эту команду на компьютере:
adb forward tcp:8080 tcp:8080

открыть браузер на компьютер и перейдите по указанному ниже адресу:

localhost:8080

http://developer.android.com/tools/help/adb.html#forwardports