Как я могу переслать свой локальный IP-адрес на эмулятор Android? - PullRequest
9 голосов
/ 21 февраля 2011

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

Ответы [ 3 ]

20 голосов
/ 22 февраля 2011

Чтобы перенаправить порт с локального компьютера на эмулятор Android, вам нужно включить Telnet. Это делается через Панель управления -> Программы и компоненты -> Включить или выключить функции Windows -> прокрутить вниз до клиента Telnet. Затем выберите его и нажмите 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), какой порт на локальной машине вы хотите переадресовать (хост-порт) и какой порт вы хотите установить на эмуляторе (гостевой порт) ). Итак, используя такую ​​команду:

redir add udp:1337:12345

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

15 голосов
/ 21 февраля 2011

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

8 голосов
/ 16 декабря 2015

Вы можете использовать команду 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

...