在虚拟化系统中,设备可能具有多个虚拟机,每个虚拟机都运行其自己的 ADB 守护程序。在这种情况下,主机虚拟机可以导出一个 RNDIS 以太网小工具,这一小工具可用于通过 USB 物理链路进行基于 TCP/IP 的通信。开发机器随后可以通过 TCP/IP 使用 ADB 来访问设备上的多个虚拟机。主机端的 ADB 守护程序可以通过 mDNS 通告客户机虚拟机上存在 ADB,方法是发布 ADB 服务。此外,开发机器可以使用 ADB 工具浏览这些服务,该工具支持 mDNS 设备发现功能(ADB 版本 31.0.2 或更高版本),以获取 adb 守护程序监听的 IP 地址和端口号,然后连接到客户机虚拟机。
您可以在开发机器上使用以下命令来浏览并连接到 ADB 服务。
- 如需启用 mDNS 发现功能,请运行以下命令:
export ADB_MDNS_OPENSCREEN=1 adb kill-server adb start-server
- 如需发现 ADB 服务,请运行以下命令:
adb mdns services List of discovered mdns services driver_vm _adb._tcp 192.168.1.49:4444 device_vm _adb._tcp 192.168.1.49:3333
- 如需连接到设备,请运行以下命令:
adb connect driver_vm._adb._tcp
- 如需列出已连接的设备,请运行以下命令:
adb devices List of devices attached driver_vm._adb._tcp device