Android ADB-Kurzanleitung

Auf Ihrem Weg zum Erlernen der Android-Entwicklung werden Sie sicherlich ein Befehlszeilentool namens ADB (Android Debug Bridge) kennenlernen. Lesen Sie weiter, um mehr darüber zu erfahren, was Sie mit diesem für Android-Entwickler üblichen Kernwerkzeug tun können.


Teil 0: Erste Schritte

Dieses Tutorial richtet sich an Java-Entwickler, die gerade erst mit dem Erlernen von Android beginnen, der aber mit Eclipse vertraut ist und das Android SDK und das Android Developer Plugin für Eclipse installiert hat. Leser sollten auch mit der Befehlszeile vertraut sein. Wenn Sie noch nicht vorbereitet sind, lesen Sie die vorherigen Tutorials dieser Serie.

Schritt 1: Verwenden des ADB-Befehls

Das ADB-Tool wird über die Befehlszeile gestartet.

Geben Sie an Ihrer Eingabeaufforderung einfach Folgendes ein:

 adb

Dadurch wird ADB ausgeführt und eine Liste von Befehlen angezeigt.

Wenn Sie tun nicht Sehen Sie sich die Liste der Befehle an, gehen Sie zurück und überprüfen Sie Ihre Installations- und Umgebungspfadeinstellungen, wie in den vorherigen Lernprogrammen beschrieben. Möglicherweise haben Sie das ADB-Programm installiert. Wenn Sie jedoch die Umgebungsvariable PATH der Shell nicht ordnungsgemäß konfiguriert haben, müssen Sie den vollständigen Dateipfad zu ADB am Terminal eingeben, um das Programm zu starten. Erledigt? Gut.

Also zurück zu dieser Liste von Befehlen. Das ADB-Tool dient zwei Zwecken. Die erste besteht darin, dass viele der anderen Android-Tools mit Geräten und Emulatoren interagieren können. Die zweite Möglichkeit ist, dass Sie als Entwickler mit Geräten und Emulatoren kommunizieren können, indem Sie manuell verschiedene Befehle ausführen.

ADB-Befehle gibt es in zwei Formen. Eine Befehlsform, die Sie direkt von ADB ausführen. Eine andere Befehlsform, die nicht direkt ADB ist, sondern üblicherweise über ADB erfolgt, erfolgt über den Befehl "adb shell".

Bevor Sie fortfahren, müssen Sie eine Emulatorinstanz ausführen oder ein Android-Gerät mit Ihrem Entwicklungscomputer verbinden. Wenn Sie jetzt den ADB-Gerätebefehl verwenden, sollten alle angeschlossenen Geräte oder Emulatorinstanzen aufgelistet werden:

 ADB-Geräte

Sie sollten so etwas sehen:

Wenn nicht, stellen Sie sicher, dass der Emulator ausgeführt wird, oder starten Sie den ADB-Server neu.

Schritt 2: Starten Sie den ADB-Server neu

Um den ADB-Server neu zu starten, finden Sie hier einen weiteren Befehl:

 adb stop-server adb start-server

Wenn Sie bereit sind, fahren Sie fort. Wir werden viele Befehle abdecken, in keiner bestimmten Reihenfolge.


Teil 1: Regelmäßige Befehle

Hier sind verschiedene Befehle, die direkt über ADB ausgeführt werden. Es folgen mehrere Befehle, für die zuerst eine Shell geöffnet werden muss.

Drücken und Ziehen

Sie können Dateien mit den ADB-Push- und ADB-Pull-Befehlen von und zu einem angeschlossenen Gerät kopieren.

 Adb Push   Adb ziehen  

Diese Befehle sind sehr nützlich, um beispielsweise XML-Voreinstellungsdateien für Ihre App während des Tests zu aktualisieren, und andere ähnliche Dinge.

App Installation und Deinstallation

Sie können ADB verwenden, um Apps (apks) von Ihren Geräten zu installieren oder zu entfernen. Verwenden Sie den Installationsbefehl, um eine Android-Paketdatei zu installieren.

 adb installieren 

Ebenso können Sie eine vorhandene App anhand ihres Paketnamens entfernen.

 Adb deinstallieren 

Möglicherweise müssen Sie Apps deinstallieren, wenn Sie zwischen Entwicklungscomputern wechseln, die nicht den gleichen App-Signaturschlüssel verwenden. Es ist auch eine schnelle Methode, um ein Gerät aufzuräumen oder zu laden, ohne Eclipse und das ADT-Plug-In verwenden zu müssen.

Sichern und Wiederherstellen

Sie können den Inhalt eines Geräts sichern und wiederherstellen. Dies hat Einschränkungen für Geräte, die nicht gerootet sind.

 ADB-Backup ADB-Wiederherstellung 

Siehe "Adb-Hilfe" für alle Optionen zum Sichern und Wiederherstellen. Dies kann nützlich sein, um App-Daten während des Testens zu speichern und sie dann für einen erneuten Test leicht wiederherzustellen.

Gerät neu starten

Sie können ein Gerät entweder normal, im Bootloader oder im Wiederherstellungsmodus neu starten.

 ADB-Neustart ADB-Neustartwiederherstellung ADB-Neustart-Bootloader

Nach unserer Erfahrung sind diese für den Emulator nicht geeignet. Es gibt jedoch Zeiten, in denen Android-Geräte verwirrt werden und einen harten Neustart benötigen.

Shell-Befehl

Das ADB-Tool verfügt über eine Shell-Schnittstelle. Um Shellbefehle auszugeben, müssen Sie zuerst diese Schnittstelle starten, indem Sie die Adb-Shell eingeben:

 ADB Shell

Nach dem Ausführen befinden Sie sich in einer Bash-Umgebung. Sie können bash-Befehle ausführen, z. B. df, um freien Speicherplatz anzuzeigen, die Betriebszeit, um zu sehen, wie lange das Gerät aktiv ist, oder die Shell-Schnittstelle zu beenden:

Wenn Sie sich mit Linux nicht auskennen, ist es möglicherweise schwieriger, sich in der Shell zurechtzufinden. Es gibt zahlreiche Online-Handbücher, in denen Sie Hilfe für bash-Befehle wie ls, cp, cd usw. erhalten.


Teil 2: Shell-Befehle

Hier sind einige spezielle Befehle, die Sie ausführen können, wenn Sie sich in der Shell befinden. Nicht alle ADB-Shellbefehle funktionieren auf physischen Geräten oder Emulatoren.

Logcat

Sie können den Befehl logcat verwenden, um die Protokollierungsausgabe ähnlich wie in Eclipse anzuzeigen:

 Adb Shell Logcat --help Logcat -t 5

Das logcat-Tool bietet viele Optionen. Standardmäßig erfolgt die Ausgabe in Echtzeit, ähnlich wie bei der Anzeige mit Eclipse. Eine nette Funktion ist, dass Sie die Ausgabe mit der Option -f an eine Datei senden können.

Sicherungs-Manager

Das bmgr-Tool ist der Sicherungsmanager. Mit diesem Tool können Sie Datensicherungs- und Wiederherstellungsvorgänge auf App-Ebene auslösen. Ihre App muss Sicherungen unterstützen, damit dies nützlich ist.

Affentest Tester

Mit dem Affentool können Sie Ihre Apps testen. Dies simuliert eine Vielzahl verschiedener Benutzereingabeereignisse, ähnlich wie ein Affe oder ein Kleinkind, das auf einer Tastatur schlägt. Verwenden Sie dies für Stresstests.

Das Affentool kann auch mit einem Skript erstellt werden und unterstützt wiederholbare Ereignisströme über die Option -s, sodass die Tests überprüft und wiederholt werden können.

SQLite 3

Sie können auch sqlite-Befehle ausführen und mit Anwendungsdatenbanken über die adb-Shell interagieren. Sie benötigen Lese- und Schreibzugriff auf die Datenbanken, die Sie untersuchen oder ändern möchten (dh Ihre eigenen Apps, keine anderen)..


Fazit

Sie haben viel gesehen, was ADB für Sie tun kann. Vom Stöbern im Dateisystem über den Neustart von Geräten bis hin zum Ausführen von sqlite-Befehlen gibt es nicht viel, was Sie nicht tun können. Es gibt auch viel mehr als nur das, was wir behandelt haben, einschließlich der Verwaltung von Netzwerkverbindungen, Portweiterleitung, Debugging-Dumps und einer Vielzahl von Shell-Befehlen, um Sie auf Trab zu halten. Eine vollständige Liste der Funktionen finden Sie in der offiziellen ADB-Dokumentation

Sie sind auf dem Weg zur Android-Entwicklung. Welche Arten von Apps freuen Sie sich auf die Erstellung? Lass es uns in den Kommentaren wissen!

Über die Autoren

Die mobilen Entwickler Lauren Darcey und Shane Conder haben mehrere Bücher zur Android-Entwicklung mitgeschrieben: ein ausführliches Programmierbuch mit dem Titel Android Wireless-Anwendungsentwicklung (jetzt in der dritten Auflage als zweiteiliger Satz), Sams Teach Yourself Android-Anwendungsentwicklung in 24 Stunden, und Programmieren der Android-Anwendungsprogrammierung für den Kindle Fire: Eine praktische Anleitung zum Erstellen Ihrer ersten Android-Anwendung. Wenn sie nicht schreiben, verbringen sie ihre Zeit damit, mobile Software in ihrem Unternehmen zu entwickeln und Beratungsdienste anzubieten. Sie können sie per E-Mail an [email protected], über ihren Blog unter androidbook.blogspot.com und über Twitter @androidwireless erreichen.

Benötigen Sie weitere Hilfe zum Schreiben von Android-Apps? Schauen Sie sich unsere neuesten Bücher und Ressourcen an!