Несколько дополнительных деталей помогут:
- Какой IP-адрес у виртуальной машины?
- Используется ли NAT, мостовая сеть или как?
- Вам действительно нужно запустить второй эмулятор внутри виртуальной машины - это усложняет работу в сети.
ОБНОВЛЕНИЕ: несколько эмуляторов на 1 машине (без ВМ)
Вы можете запустить другой эмулятор из командной строки, используя / emulator -avd. Вам нужно будет создать второй AVD, чтобы это работало. Я использую Linux, поэтому не могу дать точную информацию о Windows.
ОБНОВЛЕНИЕ: Связь между основным компьютером и виртуальной машиной с эмулятором Android
Я полагаю, что эмулятор слушает только 127.0.0.1 для серверных сокетов, поэтому удаленные машины не могут подключиться - это, конечно, случай для отладочных сокетов, которые он использует. Однако вы можете настроить переадресацию портов, используя аналогичный метод, описанный в Удаленная отладка с эмулятором Android
Хорошо, что вы используете мостовую сеть, поскольку NAT остановит виртуальную машину при получении входящих соединений, поэтому у эмулятора не будет никакой надежды.
ОБНОВЛЕНИЕ № 2: Переадресация портов
Вы можете настроить переадресацию портов между сокетами на локальном компьютере и на эмуляторе, используя adb forward . Возможно, стоит взглянуть на Связь между эмуляторами Android , возможно, существует недокументированный переключатель эмулятора -shared-net-id, который может помочь.
Надеюсь, это поможет
Фил Лелло