Android Debug Bridge: Unterschied zwischen den Versionen

Aus Android Wiki
K (Text komplett über dem Bild)
K (ADB auch über WLAN-Verbindung)
 
(35 dazwischenliegende Versionen von 16 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Die '''A'''ndroid-'''D'''ebug-'''B'''ridge ist eine Softwareschnittstelle für das Androidsystem. Sie wird genutzt, um von einem Computer aus per USB-Kabel auf ein Android Smartphone zugreifen zu können.<ref>[http://developer.android.com/guide/developing/tools/adb.html Dokumentation zu ADB (Englisch)]</ref>
{{DISPLAYTITLE:Android Debug Bridge (ADB)}}
Die '''A'''ndroid-'''D'''ebug-'''B'''ridge (oft mit ''adb'' abgekürzt) ist eine Software-Schnittstelle für das [[Android]]-System, die genutzt werden kann, um von einem Computer per USB-Kabel auf ein Android-[[Smartphone]] zugreifen und Befehle ausführen zu können.<ref>[http://developer.android.com/guide/developing/tools/adb.html Dokumentation zu ADB (englisch)]</ref>


Sie ist Bestandteil im [[Android SDK]] (Software Development Kit) und befindet sich dort im Ordner platform-tools.
Sie ist Bestandteil des [[Android SDK]] (Android '''S'''oftware '''D'''evelopment '''K'''it) und befindet sich dort im Ordner ''platform-tools''. Bei früheren Versionen vom SDK befindet sie sich im Ordner ''tools''. Seit dem Januar 2017 stellt Google zudem ein separat gepacktes Paket mit den ''platform-tools'', in welchen die ADB und [[Fastboot (Tool)|Fastboot]] enthalten sind, bereit, sodass auf ein Download des gesamten, im Vergleich zu der ADB recht großen, SDK verzichtet werden kann.<ref>{{Internetquelle|url=http://www.androidpolice.com/2017/01/05/google-makes-adb-fastboot-platform-tools-available-without-full-sdk-android-studio-download/|titel=Google makes ADB, fastboot, and other platform tools available without full SDK or Android Studio download|werk=Android Police|datum=2017-01-05|zugriff=2017-03-05}}</ref><ref>{{Internetquelle|url=http://www.androidcentral.com/get-adb-and-fastboot-utilities-without-installing-sdk-directly-google|titel=How to get ADB and Fastboot utilities without installing the Android SDK|datum=2017-01-05|zugriff=2017-03-05}}</ref><ref>{{Internetquelle|url=http://www.redmondpie.com/you-can-now-download-adb-and-fastboot-tools-without-sdk-or-android-studio/|titel=Download ADB And Fastboot Tools Without SDK Or Android Studio, Here's How {{!}} Redmond Pie|datum=2017-01-06|zugriff=2017-03-05}}</ref><ref>{{Internetquelle|url=http://www.androidauthority.com/google-adb-fastboot-platform-tools-standalone-download-741582/|titel=Google makes ADB and fastboot available without Android Studio or SDK|datum=2017-01-06|sprache=en-US|zugriff=2017-03-05}}</ref> Der Download-Link ist auf der [https://developer.android.com/studio/releases/platform-tools.html Android-Developer-Seite] zu finden.


== Was ist ADB ==
Neben einer Kabel-gebundenen Verbindung zu einem Android-Gerät unterstützt die ADB auch die Kabel-lose Verbindung über eine TCP/IP-Verbindung, z.B. [[WLAN]].<ref>{{Internetquelle|url=https://developer.android.com/studio/command-line/adb#wireless|titel=Android Debug Bridge (adb)  {{!}}  Android Developers|werk=Android Developers|sprache=en|zugriff=2019-10-29}}</ref>


Die ADB ist eine Softwareschnittstelle zwischen dem PC und dem Endgerät, die es erlaubt eine direkte Kommunikation zwischen den beiden Komponenten zu führen. Dazu gehört eine Dateiübertragungsfunktion genauso wie die Möglichkeit mittels ADB Befehle auf dem Androidsystem auszuführen und auf Komponenten des System zuzugreifen. Die ADB lässt sich über ein Kommandofenster, der cmd bei Windows, starten und bedienen. Die ADB hat bisher noch keine offizielle grafische Benutzeroberfläche.
== Was ist ADB? ==
Die ADB ist eine Software-Schnittstelle zwischen dem PC und dem Endgerät, die es erlaubt, eine direkte Kommunikation zwischen den beiden Komponenten zu führen. Dazu gehören eine Dateiübertragungsfunktion genauso wie die Möglichkeit, mittels ADB Befehle auf dem Android-System auszuführen und auf Komponenten des System zuzugreifen. Die ADB lässt sich über ein Kommandofenster, "cmd" bei Windows, starten und bedienen. Die ADB hat bisher noch keine offizielle grafische Benutzeroberfläche.


Der Hauptvorteil der ADB ist, das man auch Befehle direkt an das Gerät senden kann, als würde man die Befehle in einem Terminal Emulator auf dem Gerät tätigen.
Der Hauptvorteil der ADB ist, dass man auch Befehle direkt an das Gerät senden kann, als würde man die Befehle in einem Terminal-Emulator auf dem Gerät tätigen.
 
Neben der Möglichkeit, die ADB über eine USB-Kabel-Verbindung zu nutzen, besteht ebenfalls die Möglichkeit, die ADB über eine [[Wikipedia:Transmission Control Protocol|TCP]]-Verbindung (damit prinzipiell auch über [[WLAN]]) anzusprechen und zu nutzen.


== Wichtige Befehle ==
== Wichtige Befehle ==
Hier einige der wichtigsten ADB-Befehle.
Hier einige der wichtigsten ADB-Befehle.
Eine Auflistung aller Befehle findet man im Terminal bzw. der Eingabeaufforderung mit folgendem Befehl:
Eine Auflistung aller Befehle findet man im Terminal bzw. der Eingabeaufforderung mit folgendem Befehl:
Zeile 16: Zeile 19:


=== Geräte anzeigen ===
=== Geräte anzeigen ===
Verfügbare Geräte können mit  
Verfügbare Geräte können mit  
<pre>adb devices</pre>
<pre>adb devices</pre>
aufgelistet werden.
aufgelistet werden.
Ist die Ausgabe ähnlich der folgenden:  
 
<pre>List of devices attached  
Ist die Ausgabe ähnlich der folgenden:
???????????? no permissions</pre>
<pre>
List of devices attached
</pre>
hat man höchstwahrscheinlich keine Treiber installiert.
hat man höchstwahrscheinlich keine Treiber installiert.
Ähnelt die Ausgabe aber so:
<pre>
List of devices attached
???????????? no permissions
</pre>
muss man unter Windows die Vendor ID des Endgerätherstellers (zu finden im Geräte-Manager) in folgende Datei reinschreiben (Format: 0xZZZZ, wobei Z eine hexadezimale Zahl von 0 bis F ist):
%USERPROFILE%\.android\adb_usb.ini
Wichtig ist, dass die Vendor ID in einer eigenen Zeile steht.
Unter Linux ist die Datei im Home-Verzeichnis im Ordner .android zu finden. Die Vendor-ID lässt sich mit lsusb herausfiltern.


=== Dateien kopieren ===
=== Dateien kopieren ===
*Vom Handy auf den Computer:
*Vom Handy auf den Computer:
<pre>adb pull /pfad/am/handy.txt /pfad/am/computer.txt</pre>
<pre>adb pull /pfad/am/handy.txt /pfad/am/computer.txt</pre>
Zeile 34: Zeile 48:


=== Anwendung installieren ===
=== Anwendung installieren ===
 
Mithilfe der ADB kann man auch [[App]]s installieren. Dabei muss man beachten, dass die .apk-Datei am Computer liegen muss:
Mithilfe der ADB kann man auch Apps installieren. Dabei muss man beachten, dass die .apk-Datei am Computer liegen muss:
<pre>adb install /pfad/zur/datei/anwendung.apk</pre>
<pre>adb install /pfad/zur/datei/anwendung.apk</pre>


=== Logcat ===
=== Logcat ===
 
{{Hauptartikel|Logcat}}
Man kann sich via ADB auch den Systemlog ansehen:
Man kann sich via ADB auch den Systemlog ansehen:
<pre>adb logcat</pre>
<pre>adb logcat</pre>
Zeile 45: Zeile 58:
<pre>adb logcat > datei.txt</pre>
<pre>adb logcat > datei.txt</pre>


== adb als Systemvariable unter Windows einrichten ==
=== Shell betreten ===
{{Hauptartikel|Shell}}
Um Befehle auf dem Android-Gerät auszuführen, kann mit folgendem Befehl eine interaktive ''Shell'' betreten werden:
<pre>
adb shell
</pre>
 
== Installation ==
=== Installation und adb als Systemvariable unter Windows einrichten ===
{{Hauptartikel|Adb und Fastboot Installation (Windows)}}


Damit man nicht jedes Mal in den Ordner mit der adb.exe navigieren muss, wenn man sie benötigt, kann man sie unter Windows als Systemvariable eintragen und somit in jedem Ordner nutzen. Dazu geht man unter Windows 7 wie folgt vor:
Damit man nicht jedes Mal in den Ordner mit der adb.exe navigieren muss, wenn man sie benötigt, kann man sie unter Windows als Systemvariable eintragen und somit in jedem Ordner nutzen. Dazu geht man unter Windows 7 wie folgt vor:
Zeile 51: Zeile 73:
# System und Sicherheit
# System und Sicherheit
# System
# System
# Erweiterte Systemeinstellungen (an der rechten Seite)
# Erweiterte Systemeinstellungen (an der linken Seite)
# Umgebungsvariablen  
# Umgebungsvariablen  
Danach bei "Systemvariablen" (unten) bei Path den Pfad eures platform-tools Ordners eintragen. Von den anderen dort eingetragenen Pfaden einfach durch ein ; ohne Leerzeichen trennen (siehe Bild).
Danach bei "Systemvariablen" (unten) bei Path den Pfad eures platform-tools-Ordners eintragen. Von den anderen dort eingetragenen Pfaden einfach durch ein ; ohne Leerzeichen trennen (siehe Bild).


[[Datei:Systemvariable adb windows.jpeg]]
[[Datei:Systemvariable adb windows.jpeg]]


Wenn ihr nun die Eingabeaufforderung an beliebiger Stelle ausführt, sollte die Eingabe von  
Wenn ihr nun die Eingabeaufforderung an beliebiger Stelle ausführt, sollte die Eingabe von <pre>adb</pre> eine Auflistung aller adb-Befehle bringen.
<pre>adb</pre> eine Auflistung aller adb-Befehle bringen.  
 
Bei android-hilfe.de<ref>[http://www.android-hilfe.de/root-hacking-modding-fuer-htc-one-x/226488-platform-tools-ordner-sdk-mit-adb-fastboot.html platform-tools Ordner(SDK) mit adb und fastboot - Android-Hilfe.de]</ref> findet ihr auch nochmal die Anleitung und den platform-tools-Ordner als Download.


Bei android-hilfe.de<ref>http://www.android-hilfe.de/root-hacking-modding-fuer-htc-one-x/226488-platform-tools-ordner-sdk-mit-adb-fastboot.html</ref> findet ihr auch nochmal die Anleitung und den platform-tools-Ordner als Download.
=== Linux ===
Die größeren Linux-Distributionen enthalten die Tools ADB und Fastboot als Paket. Beispiele:
{| class="wikitable"
!Distribution
!Paketname
|-
|Ubuntu, Debian
|android-tools-adb
|-
|openSUSE, Fedora, Arch Linux
|android-tools
|-
|Slackware
|android-tools (als SlackBuild)
|}


Auf den anderen Distributionen sucht man mit dem entsprechenden Paketmanager nach "android" oder "adb", und installiert dann das passende. Sollten keine Pakete zur Verfügung stehen, startet man eine [[Android SDK#Linux|Installation des Android-SDK und wählt nur die "Platform tools" aus]].
== Siehe auch ==
* [[ADB Sideload]]
* [[Wireless ADB]]


== Einzelnachweise ==
== Einzelnachweise ==
<references />
<references />


[[Kategorie:Allgemein]]
[[Kategorie:Abkürzungen]]
[[Kategorie:Begriffe]]
[[Kategorie:Software]]

Aktuelle Version vom 31. Oktober 2019, 14:42 Uhr

Die Android-Debug-Bridge (oft mit adb abgekürzt) ist eine Software-Schnittstelle für das Android-System, die genutzt werden kann, um von einem Computer per USB-Kabel auf ein Android-Smartphone zugreifen und Befehle ausführen zu können.[1]

Sie ist Bestandteil des Android SDK (Android Software Development Kit) und befindet sich dort im Ordner platform-tools. Bei früheren Versionen vom SDK befindet sie sich im Ordner tools. Seit dem Januar 2017 stellt Google zudem ein separat gepacktes Paket mit den platform-tools, in welchen die ADB und Fastboot enthalten sind, bereit, sodass auf ein Download des gesamten, im Vergleich zu der ADB recht großen, SDK verzichtet werden kann.[2][3][4][5] Der Download-Link ist auf der Android-Developer-Seite zu finden.

Neben einer Kabel-gebundenen Verbindung zu einem Android-Gerät unterstützt die ADB auch die Kabel-lose Verbindung über eine TCP/IP-Verbindung, z.B. WLAN.[6]

Was ist ADB?[Bearbeiten | Quelltext bearbeiten]

Die ADB ist eine Software-Schnittstelle zwischen dem PC und dem Endgerät, die es erlaubt, eine direkte Kommunikation zwischen den beiden Komponenten zu führen. Dazu gehören eine Dateiübertragungsfunktion genauso wie die Möglichkeit, mittels ADB Befehle auf dem Android-System auszuführen und auf Komponenten des System zuzugreifen. Die ADB lässt sich über ein Kommandofenster, "cmd" bei Windows, starten und bedienen. Die ADB hat bisher noch keine offizielle grafische Benutzeroberfläche.

Der Hauptvorteil der ADB ist, dass man auch Befehle direkt an das Gerät senden kann, als würde man die Befehle in einem Terminal-Emulator auf dem Gerät tätigen.

Neben der Möglichkeit, die ADB über eine USB-Kabel-Verbindung zu nutzen, besteht ebenfalls die Möglichkeit, die ADB über eine TCP-Verbindung (damit prinzipiell auch über WLAN) anzusprechen und zu nutzen.

Wichtige Befehle[Bearbeiten | Quelltext bearbeiten]

Hier einige der wichtigsten ADB-Befehle. Eine Auflistung aller Befehle findet man im Terminal bzw. der Eingabeaufforderung mit folgendem Befehl:

adb help

Geräte anzeigen[Bearbeiten | Quelltext bearbeiten]

Verfügbare Geräte können mit

adb devices

aufgelistet werden.

Ist die Ausgabe ähnlich der folgenden:

List of devices attached

hat man höchstwahrscheinlich keine Treiber installiert.

Ähnelt die Ausgabe aber so:

List of devices attached
????????????	no permissions

muss man unter Windows die Vendor ID des Endgerätherstellers (zu finden im Geräte-Manager) in folgende Datei reinschreiben (Format: 0xZZZZ, wobei Z eine hexadezimale Zahl von 0 bis F ist): %USERPROFILE%\.android\adb_usb.ini

Wichtig ist, dass die Vendor ID in einer eigenen Zeile steht. Unter Linux ist die Datei im Home-Verzeichnis im Ordner .android zu finden. Die Vendor-ID lässt sich mit lsusb herausfiltern.

Dateien kopieren[Bearbeiten | Quelltext bearbeiten]

  • Vom Handy auf den Computer:
adb pull /pfad/am/handy.txt /pfad/am/computer.txt
  • Vom Computer auf das Handy:
adb push /pfad/am/computer.txt /pfad/am/handy.txt

Anwendung installieren[Bearbeiten | Quelltext bearbeiten]

Mithilfe der ADB kann man auch Apps installieren. Dabei muss man beachten, dass die .apk-Datei am Computer liegen muss:

adb install /pfad/zur/datei/anwendung.apk

Logcat[Bearbeiten | Quelltext bearbeiten]

Hauptartikel: Logcat

Man kann sich via ADB auch den Systemlog ansehen:

adb logcat

Sinnvoll ist es, die Daten in eine Datei umzuleiten:

adb logcat > datei.txt

Shell betreten[Bearbeiten | Quelltext bearbeiten]

Hauptartikel: Shell

Um Befehle auf dem Android-Gerät auszuführen, kann mit folgendem Befehl eine interaktive Shell betreten werden:

adb shell

Installation[Bearbeiten | Quelltext bearbeiten]

Installation und adb als Systemvariable unter Windows einrichten[Bearbeiten | Quelltext bearbeiten]

Damit man nicht jedes Mal in den Ordner mit der adb.exe navigieren muss, wenn man sie benötigt, kann man sie unter Windows als Systemvariable eintragen und somit in jedem Ordner nutzen. Dazu geht man unter Windows 7 wie folgt vor:

  1. Systemsteuerung
  2. System und Sicherheit
  3. System
  4. Erweiterte Systemeinstellungen (an der linken Seite)
  5. Umgebungsvariablen

Danach bei "Systemvariablen" (unten) bei Path den Pfad eures platform-tools-Ordners eintragen. Von den anderen dort eingetragenen Pfaden einfach durch ein ; ohne Leerzeichen trennen (siehe Bild).

Wenn ihr nun die Eingabeaufforderung an beliebiger Stelle ausführt, sollte die Eingabe von

adb

eine Auflistung aller adb-Befehle bringen.

Bei android-hilfe.de[7] findet ihr auch nochmal die Anleitung und den platform-tools-Ordner als Download.

Linux[Bearbeiten | Quelltext bearbeiten]

Die größeren Linux-Distributionen enthalten die Tools ADB und Fastboot als Paket. Beispiele:

Distribution Paketname
Ubuntu, Debian android-tools-adb
openSUSE, Fedora, Arch Linux android-tools
Slackware android-tools (als SlackBuild)

Auf den anderen Distributionen sucht man mit dem entsprechenden Paketmanager nach "android" oder "adb", und installiert dann das passende. Sollten keine Pakete zur Verfügung stehen, startet man eine Installation des Android-SDK und wählt nur die "Platform tools" aus.

Siehe auch[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Dokumentation zu ADB (englisch)
  2. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatVorlage:Internetquelle/Wartung/Datum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. 2017-01-05, abgerufen am 2017-03-05.Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  3. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatVorlage:Internetquelle/Wartung/Datum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. 2017-01-05, abgerufen am 2017-03-05.Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  4. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatVorlage:Internetquelle/Wartung/Datum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. 2017-01-06, abgerufen am 2017-03-05.Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  5. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatVorlage:Internetquelle/Wartung/Datum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. 2017-01-06, abgerufen am 2017-03-05 (en-us).Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  6. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatInterner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. In: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127. Abgerufen am 2019-10-29 (english).Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 127.
  7. platform-tools Ordner(SDK) mit adb und fastboot - Android-Hilfe.de