USB-Debugging

Aus Android Wiki
(Weitergeleitet von USB-Debugging via Recovery)

USB-Debugging ist eine Funktion bzw. eine Einstellung in den Entwickleroptionen, die steuert, ob Android bei der USB-Verbindung mit einem PC in einen Debugging-Modus versetzt wird oder nicht. Durch diesen Modus ist es einem Entwickler möglich, bestimmte Aktionen am Telefon vom PC aus zu steuern und zu verfolgen.

Verwendung[Bearbeiten | Quelltext bearbeiten]

Um das Android-Gerät vom PC aus über eine USB-Verbindung ansprechen zu können (bspw. über die Android Debug Bridge (ADB)), wird der Debug-Modus benötigt. Nur in diesem Modus meldet sich das Gerät als debug-fähiges Gerät am PC an und verarbeitet entsprechende Befehle. Hat man den Debug Modus eingeschaltet, kann man beispielsweise mit den ADB-Tools bestimmte Befehle ausführen und bspw. das Systemlogbuch anzeigen (passiv) oder Dateien löschen, verändern oder erstellen (aktiv).

Aktivierung[Bearbeiten | Quelltext bearbeiten]

  1. Unter Android 2.3 Gingerbread "Gingerbread": Einstellungen -> Apps -> Entwicklung
  2. Ab Android 4.0 Ice Cream Sandwich "Ice Cream Sandwich": Einstellungen -> Entwickleroptionen
  3. Ab Android 4.2 Jelly Bean "Jelly Bean": wie bei Android 4.0 Ice Cream Sandwich "Ice Cream Sandwich", allerdings müssen die Entwickleroptionen manuell aktiviert werden (siehe Artikel Entwickleroptionen)

Aktivierung über das Recovery[Bearbeiten | Quelltext bearbeiten]

Benötigt man Zugriff via ADB auf ein Gerät, muss auf diesem dafür die Einstellung USB-Debugging aktiviert sein. Kann man die Einstellung aus irgendwelchen Gründen nicht ändern (man hat zum Beispiel sein Muster vergessen), kann man diese Einstellung auch manuell über ein geeignetes Recovery-System ("custom recovery") ändern.

HINWEIS: Da USB-Debugging zum Verändern des Gerätes genutzt werden kann, zum Beispiel das Löschen eines Musters, ist das Ändern dieser Einstellung nur beim eigenen Gerät erlaubt.

Ändern der Einstellung[Bearbeiten | Quelltext bearbeiten]

[Bearbeiten] HINWEIS

Trotz sorgfältiger Ausarbeitung können wir bzw. die Autoren dieses Artikels nicht garantieren, dass durch die Durchführung der folgenden Anleitung keine Schäden an deinem Gerät/Betriebssystem entstehen und übernehmen daher keine Haftung für auftretende Schäden und Fehlfunktionen an Hard- und Software!

Solltest du noch unsicher sein, befolge diese Schritte:

  1. Die Anleitung nur durchführen, wenn evtl. genannte Bedingungen (Modellnummer, Android-Version etc.) auf dich bzw. dein Gerät zutreffen
  2. Anleitung aufmerksam und vollständig lesen, unbekannte Begrifflichkeiten nachschlagen
  3. Heruntergeladene Dateien und Software mit einem Virenscanner überprüfen (falls nicht von der Anleitung untersagt, Hintergrund)
  4. Evtl. ein Backup wichtiger Einstellungen und Daten machen
  5. Die Anleitung nicht durchführen, wenn du nicht weißt, was du tust!

Das permanente Ändern ist über die zentrale Datei build.prop möglich, die betreffende Einstellung heißt persist.service.adb.enable.

Um diese über das Recovery oder über die Telefontastatur zu ändern, geht man wie folgt vor:

  1. starte das Gerät ins Recovery-System
  2. verbinde das Gerät mit dem PC (die USB-Treiber müssen installiert sein)
  3. öffne ein Kommandozeilen- bzw. Terminalfenster und (nur unter Windows notwendig) navigiere in den Ordner, in dem adb.exe liegt.
  4. notiere den Mount-Zustand und die Rechte des Ordners /system
  5. aktiviere ("mount") das Dateisystem "/system" im Modus "read-write" über adb (adb shell-Kommando) und setze die Rechte auf 777 (rwxrwxrwx)
  6. führe folgenden Befehl aus:
adb pull /system/build.prop build.prop
  1. öffne die Datei "build.prop", die sich nun im Ordner der adb befindet, mit einem beliebigen Textprogramm (unter Windows z.B. notepad++)
  2. füge an das Ende der Datei folgende Zeile an:
persist.service.adb.enable=1
  1. speichere die Datei und schließe den Texteditor
  2. führe folgenden Befehl aus:
adb push build.prop /system/build.prop
  1. setze den Mount-Zustand und die Rechte des Ordners /system auf den alten Stand zurück.
  2. starte das Gerät neu
  3. Um Datenverlust auszuschließen, sollte der Befehl "sync" die Eingaben abschließen.
  4. nun sollte USB-Debugging dauerhaft aktiviert sein, und man kann jederzeit mit der ADB arbeiten.


im folgenden Beispiel unter Windows wird davon ausgegangen, dass die Datei default.prop den/die ergänzenden Befehle enthält:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. Alle Rechte vorbehalten.

C:\>cd \and*\pla*

C:\android-sdk-windows\platform-tools>adb pull /system/build.prop build.prop
1307 KB/s (4018 bytes in 0.003s)

C:\android-sdk-windows\platform-tools>adb pull default.prop default.prop
57 KB/s (118 bytes in 0.002s)

C:\android-sdk-windows\platform-tools>copy build.prop+default.prop build.prop
build.prop
default.prop
        1 Datei(en) kopiert.

C:\android-sdk-windows\platform-tools>adb shell
sh-3.2$ su
su
sh-3.2# mount
mount
/dev/stl9 /system rfs rw,noatime,nodiratime,vfat,llw,check=no,gid/uid/rwx,iocharset=cp437 0 0
sh-3.2# chmod 777 system
chmod 777 system
sh-3.2# ^C
C:\android-sdk-windows\platform-tools>adb push build.prop /system/build.prop
367 KB/s (4137 bytes in 0.011s)

C:\android-sdk-windows\platform-tools>adb shell
sh-3.2$ su
su
sh-3.2# chmod 755 system
chmod 755 system
sh-3.2# mount -o remount -r /dev/st19 /system
mount -o remount -r /dev/st19 /system
sh-3.2# sync
sync
sh-3.2# ^C
C:\android-sdk-windows\platform-tools>

Gefahren[Bearbeiten | Quelltext bearbeiten]

Die USB-Debugging-Funktion ist eine Entwicklerfunktion und sollte einzig eingeschaltet werden, wenn man diese unbedingt benötigt, sowie nach dem Erledigen der Aufgaben wieder ausgeschaltet werden. USB-Debugging bietet einem potentiellen Dieb deutlich mehr Möglichkeiten, ein zum Beispiel gesperrtes Handy zu verwenden (siehe Muster vergessen) oder an die gespeicherten Daten heran zu kommen, auch wenn das Gerät gesperrt ist.

Andererseits ist aktiviertes USB-Debugging Voraussetzung, um Apps wie den MyPhoneExplorer nutzen zu können.

Andere Apps, wie die Huawei HiSuite, benötigen hingegen die aktivierte Einstellung HiSuite HDB zulassen.