[HOW TO] ADB Tutorial (Anfängerfreundlich)

  • Antworten:112
  • OffenStickyNicht beantwortet
  • Forum-Beiträge: 4.746

28.07.2012 00:18:32 via Website

Hallo liebe Community!

In diesem Thread möchte ich euch den Umgang mit dem mächtigen, aber auch oftmals gefürchteten ADB erleichtern.




  • Was ist "ADB"?
ADB = Android Debug Bridge
ADB ist Teil von Android SDK (auf SDK gehen wir hier aber nicht ein). Damit kann man alle möglichen "Operationen" via PC oder Laptop über das USB Kabel am Android Handy ausführen. Von flashen von Kernel, Custom Rom´s bis hin zur normalen installation von Apps.


  • Was benötige ich um mit ADB zu arbeiten?
Android Handy mit Root.
USB Kabel
PC oder Laptop
Und natürlich ADB. Hier gibt es wie oben genannt 2 Varianten:
Das komplette "SDK Tool" (ist aber sehr umsändlich!), oder wir nehmen

>>> ADB Tools <<<
Dieser Mediafire Link führt zu meinen Mediafire Account

ADB Tools ist eine vereinfachung von den ganzen SDK Programm.


  • Wie installieren ich "ADB Tools"?
Ganz einfach.
ADB Tools runterladen (ist eine .zip Datei) und diese entpacken.
Entpackt die Datei direkt auf eurer Festplatte (C: ), dann tut ihr euch später leichter!


Gut! Als nächstes brauchen wir noch Administrator rechte, sowohl am PC als auch am Handy.
Am PC meldet euch mit euren Administrator Konto an.
Am Handy müsst ihr dazu einfach unter Menü - Einstellungen - Entwickleroptionen (bei älteren Modellen liegt dieser Punkt unter Anwendungen) "USB Debugging" aktivieren.


Jetzt können wir das Handy via USB Kabel mit dem PC verbinden. Ihr werdet dann gefragt ob auf die SD Karte zugegriffen werden soll. Das wollen wir nicht.
"Nur Laden" auswählen.

Danach öffnen wir das Windows Eingabefenster "Ausführen" (zu finden unter Start - Ausführen, im normalfall). Win + R geht aber auch.

In das Fenster das sich öffnet geben wir "cmd" ein.
1cmd

Um nun in den ADB Tools Ordner zu wechseln geben wir "cd c:\adb-tools" ein.
1cd c:\adb-tools

Nun sind wir im ADB Tools Ordner. Jetzt noch:
1adb

und wir sehen eine Menge Befehle runterlaufen.

Danach nur noch
1adb devices

und euer Handy (Geräte ID) sollte jetzt sichtbar sein.


Verbindung erfolgreich hergestellt! :)



  • Welche Befehle gibt es für "ADB"?
Viele. Im Prinzip kann damit alles machen.






1-d - directs command to the only connected USB device
2 returns an error if more than one USB device is present.
3 -e - directs command to the only running emulator.
4 returns an error if more than one emulator is running.
5 -s <serial number> - directs command to the USB device or emulator with
6 the given serial number. Overrides ANDROID_SERIAL
7 environment variable.
8 -p <product name or path> - simple product name like 'sooner', or
9 a relative/absolute path to a product
10 out directory like 'out/target/product/sooner'.
11 If -p is not specified, the ANDROID_PRODUCT_OUT
12 environment variable is used, which must
13 be an absolute path.
14 devices - list all connected devices
15 connect <host>[:<port>] - connect to a device via TCP/IP
16 Port 5555 is used by default if no port number is specified.
17 disconnect [<host>[:<port>]] - disconnect from a TCP/IP device.
18 Port 5555 is used by default if no port number is specified.
19 Using this ocmmand with no additional arguments
20 will disconnect from all connected TCP/IP devices.
21
22device commands:
23 adb push <local> <remote> - copy file/dir to device
24 adb pull <remote> [<local>] - copy file/dir from device
25 adb sync [ <directory> ] - copy host->device only if changed
26 (-l means list but don't copy)
27 (see 'adb help all')
28 adb shell - run remote shell interactively
29 adb shell <command> - run remote shell command
30 adb emu <command> - run emulator console command
31 adb logcat [ <filter-spec> ] - View device log
32 adb forward <local> <remote> - forward socket connections
33 forward specs are one of:
34 tcp:<port>
35 localabstract:<unix domain socket name>
36 localreserved:<unix domain socket name>
37 localfilesystem:<unix domain socket name>
38 dev:<character device name>
39 jdwp:<process pid> (remote only)
40 adb jdwp - list PIDs of processes hosting a JDWP transport
41 adb install [-l] [-r] [-s] <file> - push this package file to the device and install it
42 ('-l' means forward-lock the app)
43 ('-r' means reinstall the app, keeping its data)
44 ('-s' means install on SD card instead of internal storage)
45 adb uninstall [-k] <package> - remove this app package from the device
46 ('-k' means keep the data and cache directories)
47 adb bugreport - return all information from the device
48 that should be included in a bug report.
49
50 adb help - show this help message
51 adb version - show version num
52
53DATAOPTS:
54 (no option) - don't touch the data partition
55 -w - wipe the data partition
56 -d - flash the data partition
57
58scripting:
59 adb wait-for-device - block until device is online
60 adb start-server - ensure that there is a server running
61 adb kill-server - kill the server if it is running
62 adb get-state - prints: offline | bootloader | device
63 adb get-serialno - prints: <serial-number>
64 adb status-window - continuously print device status for a specified device
65 adb remount - remounts the /system partition on the device read-write
66 adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program
67 adb reboot-bootloader - reboots the device into the bootloader
68 adb root - restarts the adbd daemon with root permissions
69 adb usb - restarts the adbd daemon listening on USB
70 adb tcpip <port> - restarts the adbd daemon listening on TCP on the specified port
71networking:
72 adb ppp <tty> [parameters] - Run PPP over USB.
73 Note: you should not automatically start a PPP connection.
74 <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
75 [parameters] - Eg. defaultroute debug dump local notty usepeerdns
76
77adb sync notes: adb sync [ <directory> ]
78 <localdir> can be interpreted in several ways:
79
80 - If <directory> is not specified, both /system and /data partitions will be updated.
81
82 - If it is "system" or "data", only the corresponding partition
83 is updated.
84
85environmental variables:
86 ADB_TRACE - Print debug information. A comma separated list of the following values
87 1 or all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport, jdwp
88 ANDROID_SERIAL - The serial number to connect to. -s takes priority over this if given.
89 ANDROID_LOG_TAGS - When used with the logcat option, only these debug tags are printed.






Ich erklär mal die wichtigsten:



1adb help
Erklärt sich von selbst denke ich ;)


1adb devices
Damit wird das Handy mit dem PC verbunden bzw angeschlossene Geräte angezeigt.


1adb install
1adb install meineapp.apk
Das installieren einer App (auch "Sideloading" genannt).
.apk Datei in den ADB Tools Ordner kopieren, danach den Befehl wie oben als Beispiel beschrieben ausführen.


1adb reboot
1adb reboot bootloader
1adb reboot recovery
Gerät neu starten, oder eben in den Bootloader oder Recovery starten.


1adb push
1adb push /dateipfad/datei.endung /zielordner
1adb push C:/adb-tools/baum.jpg sdcard
Damit kopieren wir Datein vom PC auf das Handy (SD Karte).
Dateien vom PC auf das Handy kopieren.


1adb pull
1adb pull adb pull /system/app/ADWLaucnher.apk ADWLauncher.apk
Damit kopieren wir Dateien vom Handy auf den PC (ADB Tools Ordner).


Es gibt natürlich noch hunderte anderer Befehle, diese hier aufzulisten würde aber ein paar Tage dauern.





Ich hoffe ich konnte ein bisschen Klarheit in die Sache reinbringen!
Wünsche euch noch viel Spaß und Erfolg mit ADB :)

— geändert am 18.11.2012 13:09:29

iPhone 5s iPad Mini

  • Forum-Beiträge: 4.746

28.07.2012 00:18:51 via Website

reserved for future use :P

iPhone 5s iPad Mini

22
Gelöschter Account
  • Forum-Beiträge: 1.135

28.07.2012 18:06:38 via Website

Danke, das ist RICHTIG gut und sollte zur Grundausstattung gehören. Hab zwar selbst das SDK drauf, das hier reicht aber eigentlich und ist, wie Du schon sagst, bei weitem nicht so umständlich und zeitaufwändig. Sollte sich jeder, der es noch nicht hat, runterladen und sich mit vertraut machen.
Klick auf "Daumen hoch" ist hier angebracht...:D

Ein Backup tut nicht weh, kein Backup dagegen sehr...

  • Forum-Beiträge: 1.452

31.07.2012 09:54:40 via App

Übrigens sollte ADB neben der Busybox auch im Terminal Emulator auf dem Smartphone funktionieren...

— geändert am 31.07.2012 10:11:48

Grüße, Julian

  • Forum-Beiträge: 4.746

31.07.2012 14:07:29 via Website

glaube kaum dass du dateien vom PC via emulator übertragen kannst, geschweige denn kernel flashen oder sonstige operationen ausführen ;)

— geändert am 31.07.2012 14:07:49

iPhone 5s iPad Mini

  • Forum-Beiträge: 1.452

01.08.2012 22:30:38 via App

Thomas B.
glaube kaum dass du dateien vom PC via emulator übertragen kannst, geschweige denn kernel flashen oder sonstige operationen ausführen

Terminal Emulator != emuliertes Terminal

adb push/pull kann man sehrwohl(sdcard-path, system-path), kernels flasht man, wenn man nicht ewig warten will, sowieso nicht mit adb, sondern mit einem Recovery

Beschäftigst dich nicht so häufig mit dem Terminal emu, oder? :wink:

— geändert am 01.08.2012 22:32:49

Grüße, Julian

  • Forum-Beiträge: 4.746

01.08.2012 22:46:30 via Website

ist mir schon klar was ein teminal emulator ist^^

nö, terminal emulator ist für mich nur ne notlösung, da es im funktionsumfang doch sehr eingeschränkt ist.
bezüglich kernel, klar ists einfacher via recovery flashen. da es beim One X zB noch kein s-off gibt, ist adb via PC unumgänglich zum flashen von kernels ;)

außerdem, ich werde nicht das handy zum PC stecken, die dateien auf SD karten verschieben, abstecken, und dann via TE auf die system partition verschieben. da geh ich ja mit der kirche ums kreuz.
wenn das handy schon am PC angeschlossen ist, dann mach ichs gleich über ADB ;)

— geändert am 01.08.2012 22:48:37

iPhone 5s iPad Mini

  • Forum-Beiträge: 15

14.08.2012 11:16:52 via Website

es klappt net so ganz mit dem dateien auf die sdkarte ziehen habe das hier eingegebn: (auch noch andere varianten ausprobiert)


C:\Users\Marvin\Desktop\adb-tools>adb push C:/tg_endeavoru-ota-30.zip sdcard

aber kommt nur ne fehlermeldung:
C:\Users\Marvin\Desktop\adb-tools>adb push C:/tg_endeavoru-ota-30.zip s
adb server is out of date. killing...
* daemon started successfully *
failed to copy 'C:/tg_endeavoru-ota-30.zip' to 'sdcard': Is a directory
  • Forum-Beiträge: 4.746

14.08.2012 11:26:52 via App

Klar weil du den Befehl komplett verdreht hast.
"adb" immer am Anfang.

iPhone 5s iPad Mini

  • Forum-Beiträge: 15

14.08.2012 11:29:12 via Website

wie meinst du das immer am anfang? also: adb adb push C:/........ ?
  • Forum-Beiträge: 4.746

14.08.2012 11:45:12 via App

Marvin L.
wie meinst du das immer am anfang? also: adb adb push C:/........ ?

Ach bitte komm...
Ich habe das Anfängerfreundlich beschrieben. Soll ich dir das alles nochmal verkauen?

iPhone 5s iPad Mini

  • Forum-Beiträge: 15

14.08.2012 11:55:26 via Website

ich habe erst adb, dann adb devices eingegeben so meinst du das doch auch oder? und wenn ich dann wie oben schon beschrieben den befehel eingeb kommt trz. diese fehlermeldung.
  • Forum-Beiträge: 4.746

14.08.2012 12:23:13 via Website

wenn du alles so eingibst wie beschrieben kann garkeine fehlermeldung kommen.
es muss alles passen, der exakte dateipfad usw.
ist dein handy eingeschaltet?

iPhone 5s iPad Mini

  • Forum-Beiträge: 15

14.08.2012 13:09:05 via Website

kann es vllt sein das der debuggin modus ausgeschaltet ist? kann ich den durch nen adb befehl aktiviern?

edit: immerhin kommt ja auch die meldung das es erfolgreich verbunden hat und mir wird auch die Geräte ID angezeigt

— geändert am 14.08.2012 13:10:38

  • Forum-Beiträge: 4.746

14.08.2012 14:03:30 via App

Dann musst du den debug Modus eben aktivieren :P

iPhone 5s iPad Mini

  • Forum-Beiträge: 15

14.08.2012 14:14:12 via Website

geht des auch durch en befehl von adb?
da ich ja nichts anderes machen kann auser bootloader un recovery noch :D

achja es kam keine fehlermeldung aber da steht jetz die ganze zeit schon:
C:\Users\Marvin\Desktop\adb-tools>adb push C:/tg_endeavoru-ota-30.zip sdcard
adb server is out of date. killing...
* daemon started successfully *

die datei ist 142MB groß dauert des so lang bis des rüberezogen hat? oO
  • Forum-Beiträge: 3

03.09.2012 21:46:31 via Website

bitte löschen.

— geändert am 03.09.2012 22:07:24

  • Forum-Beiträge: 4.746

03.09.2012 21:53:34 via App

Führe einen Befehl durch, zb "adb reboot". Wenn das funktioniert, funktioniert es :)
Hast du usb debugging aktiviert?

iPhone 5s iPad Mini

  • Forum-Beiträge: 3

03.09.2012 22:08:17 via Website

Danke für die schnelle antwort, ich hatte die device driver von acer nicht installiert -.- ich war der annahme, die Windows Treiber reichen aus ;)