Nei sistemi virtualizzati, il dispositivo può avere più VM, ciascuna delle quali esegue il proprio demone ADB. In questo caso, la VM host può esportare un gadget Ethernet RNDIS, che può essere utilizzato per le comunicazioni basate su TCP/IP tramite il collegamento fisico USB. La macchina di sviluppo può quindi utilizzare ADB su TCP/IP per accedere a più macchine virtuali sul dispositivo. Il demone ADB sul lato host può annunciare la presenza ADB sulle VM guest tramite mDNS pubblicando servizi ADB. Inoltre, la macchina di sviluppo può esplorare questi servizi con lo strumento ADB, che supporta il rilevamento dei dispositivi mDNS (versione ADB 31.0.2 o successiva ) per ottenere l'indirizzo IP e il numero di porta su cui è in ascolto il demone adb e quindi connettersi alle VM ospiti .
I seguenti comandi possono essere utilizzati sulla macchina di sviluppo per esplorare e connettersi ai servizi ADB.
- Per abilitare il rilevamento mDNS, eseguire:
export ADB_MDNS_OPENSCREEN=1 adb kill-server adb start-server
- Per scoprire i servizi ADB, esegui:
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
- Per connettersi al dispositivo, eseguire:
adb connect driver_vm._adb._tcp
- Per elencare i dispositivi collegati, eseguire:
adb devices List of devices attached driver_vm._adb._tcp device