Über adb
Kurz gesagt, adb
(Android Debug Bridge) ist ein Dienstprogramm, das auf einem Computer installiert werden soll, damit es auf einem Telefon, das entweder über ein USB-Kabel oder über dasselbe Wi-Fi-Netzwerk angeschlossen ist, eine Shell erhält.
Auf bestimmten Geräten mit Android Lollipop (5.1.1) und möglicherweise niedrigeren Versionen des Betriebssystems war es möglich, ein Gerät dazu zu bringen, sich mit sich selbst zu verbinden, da der adb
Client auch im Telefon enthalten war. Dies ist nicht mehr möglich, da Googleadb
ab Android Marshmallow (6.0) die Binärdatei von den Telefonen entfernt hat, um die nutzbare Angriffsfläche zu verringern.
Es ist jedoch möglich, den adb
Client auf einem Telefon manuell wieder einzuführen , ohne die Binärdatei selbst kompilieren zu müssen. Weitere Informationen zu diesem Thema sowie zur Installation auf einem Computer und zur allgemeinen Fehlerbehebung finden Sie im Adb-Tag-Wiki .
Wo man es bekommt
Vor einiger Zeit musste man das vollständige Android SDK von Google herunterladen, um ein offizielles Paket zu erhalten, um ein adb
anderes Hilfsprogramm namens fastboot
Google zu erhalten. Heutzutage ist ein kleines offizielles Paket verfügbar, wie XDA sagt . Es enthält Binärdateien für die gängigsten Betriebssysteme.
Wie es funktioniert
Der adb
auf Ihrem Computer installierte Client stellt über einen internen Server eine Verbindung zu einem angeschlossenen oder anderweitig erkennbaren Telefon her. Anschließend kann der Benutzer eine Vielzahl von Befehlen an das Telefon selbst senden, die von adbd
einem auf dem Telefon befindlichen Dämon abgehört werden.
Bei der Verwendung geben adb
Sie sich als der angerufene Benutzer shell
(UID 2000
) aus. Dieser Benutzer ist insofern besonders, als er App-Berechtigungen erteilen und auf mehr Informationen zugreifen kann als ein einfacher Benutzer. Diese Tatsache bedeutet jedoch nicht, dass dies mit der Tatsache adb
identisch ist su
, dass Sie sich mit letzterem als Benutzer ausgeben können.
Weitere Informationen adb
und Funktionen finden Sie in der offiziellen Dokumentation .
Befehle von einem Telefon aus ausgeben
Die meisten Befehle, die über ausgegeben werden können adb
, sind Dienstprogramme, die in einem Telefon vorinstalliert sind.
Um auf sie zugreifen zu können, müssen Sie eine Terminalemulator-App auf Ihrem Telefon installieren (beachten Sie, dass Termux insofern besonders ist, als es seine eigenen spezifiziert PATH
und dabei System-Binärdateien ignoriert). Auf diese Weise können Sie beispielsweise Befehle logcat
direkt auf Ihrem Mobilgerät ausgeben . Denken Sie jedoch daran, das adb
Präfix wegzulassen .
Es ist erwähnenswert, dass bei fehlenden Root-Berechtigungen der Befehlsbereich, den Sie ausführen können, und die Informationen, auf die Sie zugreifen können, erheblich geringer sind als bei Verwendung adb
, da die UID, die sie aufruft, die ist App selbst und Apps haben weniger Berechtigungen als UID 2000
.