Google arbeitet an einer geeigneten drahtlosen ADB-Implementierung, damit App-Entwickler drahtlos debuggen können. Diese Funktion wird möglicherweise in Android 11 eingeführt.
Für Android-App-Entwickler ist ADB ein unverzichtbares Tool zum Debuggen von Anwendungen. Mit der Möglichkeit, Protokolle zu generieren, Dateien zu pushen und zu ziehen, APKs von der Seite zu laden und die Shell aufzurufen, gibt ADB Entwicklern viel Kontrolle über ein Testgerät, während sie einen PC verwenden. Obwohl es möglich ist Verwenden Sie ADB drahtlos Wenn Sie eine Verbindung zu Ihrem Gerät über TCP/IP* herstellen, wissen viele Entwickler möglicherweise nichts davon und bleiben daher einfach bei der Verwendung einer Kabelverbindung. Außerdem ist drahtloses ADB derzeit nicht so praktisch, wenn Ihr Gerät keine statische IP-Adresse hat oder Sie mit mehreren Testgeräten arbeiten. Schließlich erfolgt die Datenübertragung über ADB über TCP/IP im Klartext, daher ist es keine gute Idee, es zu verwenden, wenn eine Verbindung zu einem nicht vertrauenswürdigen Netzwerk besteht. Glücklicherweise scheint Google an einer geeigneten, nativen und (möglicherweise) sicheren Implementierung von Wireless ADB zu arbeiten, die nächstes Jahr in Android 11 landen könnte.
Joshua Duong, ein Softwareentwickler bei Google, reichte ein mehrere Commits an den AOSP Gerrit die diese Funktion implementieren. Diese Commits Erstellen Sie einen WLAN-Dienst für ADB mit Unterstützung für sicheres Pairing. Wir haben keine Beweise dafür entdeckt, dass die neue Implementierung Daten während der Übertragung verschlüsselt, aber diese Funktion ist offensichtlich noch in der Entwicklung, sodass sie möglicherweise in einem späteren Commit verfügbar sein wird. Auf Benutzerseite plant Google, in den Entwickleroptionen einen neuen „Wireless-Debugging“-Schalter hinzuzufügen, der das Koppeln von Geräten durch Scannen eines QR-Codes oder Eingabe eines 6-stelligen Codes unterstützt.
Drahtlose ADB-Strings für Android 11
<stringname="enable_adb_wireless">Wireless debuggingstring>
<stringname="enable_adb_wireless_summary">Debug mode when Wi\u2011Fi is connectedstring>
<stringname="adb_wireless_error">Errorstring>
<stringname="adb_wireless_settings">Wireless debuggingstring>
<stringname="adb_wireless_list_empty_off">To see and use available devices, turn on wireless debuggingstring>
<stringname="adb_pair_method_qrcode_title">Pair device with QR codestring>
<stringname="adb_pair_method_qrcode_summary">Pair new devices using QR code Scannerstring>
<stringname="adb_pair_method_code_title">Pair device with pairing codestring>
<stringname="adb_pair_method_code_summary">Pair new devices using six digit codestring>
<stringname="adb_paired_devices_title">Paired devicesstring>
<stringname="adb_wireless_device_connected_summary">Currently connectedstring>
<stringname="adb_wireless_device_details_title">Device detailsstring>
<stringname="adb_device_connect">Connectstring>
<stringname="adb_device_disconnect">Disconnectstring>
<stringname="adb_device_forget">Forgetstring>
<stringname="adb_device_mac_addr_title_format">Device MAC address: %sstring>
<stringname="adb_wireless_connection_failed_title">Connection unsuccessfulstring>
<stringname="adb_wireless_connection_failed_message">Make sure %s is connected to the correct networkstring>
<stringname="pairing_progress_category_title">Waiting for pairing requests..string>
<stringname="adb_pair_new_devices_title">Pair new devicesstring>
<stringname="adb_no_pairing_devices_found">No devices were found for pairing.string>
<stringname="adb_pairing_device_dialog_title">Pair with device?string>
<stringname="adb_pairing_device_dialog_pairing_code_label">Wi\u2011Fi pairing codestring>
<stringname="adb_pairing_device_dialog_failed_title">Pairing unsuccessfulstring>
<stringname="adb_pairing_device_dialog_failed_msg">Make sure the device is connected to the same network.string>
<stringname="adb_wireless_verifying_qrcode_text">Checking QR code...string>
<stringname="adb_qrcode_pairing_device_failed_msg">Failed to pair the device. Either the QR code was incorrect, or the device is not connected to the same network.string>
<stringname="adb_discovery_enable_failed_title">Discovery unsuccessfulstring>
<stringname="adb_discovery_failed_msg">Failed to enable ADB wireless discovery. Please make sure you are connected on a Wi\u2011Fi network.string>
<stringname="keywords_adb_wireless">adb, debug, devstring>
mehr lesen
Es sieht so aus, als würde Google endlich Entwicklungsarbeit in diese Funktion investieren, also hoffe ich, dass sie nächstes Jahr in Android 11 verfügbar sein wird. Diese Commits wurden jedoch noch nicht zusammengeführt, sodass es keine Garantie dafür gibt, dass die Funktion in der nächsten Android-Version verfügbar sein wird. Wir werden AOSP Gerrit im Auge behalten, um zu verfolgen, wann es zusammengeführt wird, und um mehr über diese Implementierung herauszufinden.
*XDA Recognized Developer phhusson hat mich auf ADB aufmerksam gemacht unterstützt Multicast-DNSDaher ist es bereits möglich, eine drahtlose Verbindung zu ADB herzustellen, ohne die IP-Adresse Ihres Geräts zu benötigen. Allerdings ist zum Starten des Dienstes Root erforderlich und es kann jeweils nur ein Gerät angeschlossen sein, sodass dies keine ideale Lösung ist. Außerdem ist es nirgendwo öffentlich dokumentiert, sodass nur sehr wenige Menschen davon wissen.
Vielen Dank an den anerkannten XDA-Entwickler luca020400 für den Tipp und dazu Phhusson für den Hinweis auf die mDNS-Unterstützung in ADB!