在虛擬化系統中,設備可能有多個 VM,每個 VM 都運行自己的 ADB 守護程序。在這種情況下,主機 VM 可以導出一個 RNDIS 以太網小工具,該小工具可用於通過 USB 物理鏈路進行基於 TCP/IP 的通信。然後,開發機器可以使用 ADB over TCP/IP 訪問設備上的多個 VM。主機端的 ADB 守護進程可以通過發布 ADB 服務,通過 mDNS 宣布 ADB 在來賓 VM 上的存在。另外,開發機可以通過ADB工具瀏覽這些服務,該工具支持mDNS設備發現(ADB版本31.0.2或更高版本),獲取adb守護進程監聽的IP地址和端口號,然後連接到guest虛擬機.
可以在開發機器上使用以下命令來瀏覽和連接 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