У меня есть виртуальная машина Linux и виртуальная машина Genymotion на моем хосте. Оба имеют одинаковую сетевую конфигурацию (я сам ее настраивал):

Adapter 1:
  Attached-To: Host-only adapter
  Name: VirtualBox Host-Only Ethernet Adapter
  Advanced:
    Promiscuous Mode: Deny
    Cable connected: yes

Adapter 2:
  Attached-To: NAT
  Advanced:
    Cable connected: yes

Adapter 3:
  Attached-To: Bridged Adapter
  Name: Realtek PCIe GBE Family Controller
  Advanced:
    Promiscuous Mode: Deny
    Cable connected: yes

Adapter 4:
  Attached-To: Bridged Adapter
  Name: TAP-Windows Adpater V9
  Advanced:
    Cable connected: yes

Я могу adb devices в хост и посмотреть:

C:\Program Files\Genymobile\Genymotion\tools>adb devices
List of devices attached
192.168.184.101:5555    device

Когда я пытаюсь в моем госте Linux для adb devices это ничего не показывает. Если я adb connect 192.168.184.101 он говорит, что подключен, но показывает автономный статус. Наконец, я могу успешно пропинговать свою виртуальную машину Android с виртуальной машины Linux.

2 ответа2

0

так как я столкнулся с той же проблемой, я заглянул в нее глубже и нашел решение "ок".

По сути, дело в том, что Genymotion автоматически подключается к эмулятору с помощью adb из ОС Windows (либо Genymotion-Local-adb, либо установленный SDK, если вы указали путь в настройках).

Таким образом, запустив эмулятор, «Windows-ADB» подключается к эмулятору через адаптер только для хоста и "блокирует" порт. При попытке подключения эмулятор уже занят и отправляет статус "оффлайн".

Я не нашел решения, как напрямую заблокировать соединение adb через Genymotion, но вот обходной путь:

1.) Найдите adb, который использует Genymotion (возможно, в Genymotion/tools или в предоставленном /android-sdk /platform-tools /

2.) Завершите соединение в Windows. Откройте cmd в папке и прервите соединение:

adb disconnect
adb kill-server

3.) После этого вы быстрее подключаетесь к эмулятору через vm:

#!/bin/bash

echo ADB Genymotion connect...
./adb disconnect
./adb kill-server
ADBHOST=192.168.1.2 ./adb devices    
echo Done!

после ADBHOST IP Genymotion-Эмулятор. Если все в порядке, устройство теперь подключено к виртуальной машине и отключено от сети в Windows.

Ура, варочная панель

ОБНОВЛЕНИЕ: Адетуту дает подробную информацию о шаге 3, что является правильным. Спасибо!

-1

Hob ответ правильный. = Просто чтобы исправить скрипт на ВМ / гостевой машине, он должен быть

#!/ Бен / Баш

echo ADB Genymotion подключи ...
ADB отключить
adb kill-server
ADBHOST = IPofGenyMotiondevice adb devices

эхо готово!

= затем сохраните как исполняемый файл bash, сразу же вы убьете сервер в Windows и запустите файл bash в вашей гостевой ОС

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .