[Nerd Nische] Android Wear und ADB-Kommandos mit dem Android Smartphone

Geschrieben von

Stefan´s Nerd Nische: ADB mit Android Wear vom Android Smartphone aus ohne einen PC

Zwar hat die Apple Watch aus dem Stand heraus den Smartwatch-Markt erobern können, aber mit einer Android Wear Smartwatch trifft man nicht nur auf eine größere Auswahl sondern hat auch ungemein mehr Freiheiten. Wer sich mit der Materie auskennt kann sogar über eine Remote-Verbindung via Bluetooth diverse Anpassungen auf System-Ebene vornehmen. Und das Beste: Es braucht nicht mehr als ein Android Smartphone.

Wer das Maximum aus seinem Android Smartphone oder Android Tablet herausholen will, der wird sich vermutlich schon einmal mit der Thematik ADB (Android Debugging Bridge) auseinander gesetzt haben. Selbst auf eine Android Wear Smartwatch kann man über diesen Weg zugreifen, nur braucht es dazu immer einen Desktop-Rechner. Stimmt aber nicht, denn das Smartwatch-Betriebssystem von Google kommt ab Werk mit der Möglichkeit, via Bluetooth auf die ADB-Kommandos zuzugreifen.

ADB-Verbindung zu Android Wear herstellen

androidwear_entwicklerAlles was man dazu braucht ist neben einer handelsüblichen Smartwatch mit Android Wear noch ein Android Smartphone mit Root-Zugriff und eine Terminal-App, um die nötigen ADB-Kommandos ausführen zu können. Bevor man loslegen kann, müssen logischerweise die Entwickler-Optionen freigeschaltet und das Debugging aktiviert werden:

  1. Öffnet die Einstellungen der Smartwatch
  2. Öffnet den Info-Button
  3. Tappt sieben Mal auf die Build-Nummer
  4. Geht eine Ebene zurück
  5. Öffnet den neuen Menüpunkt Entwickleroptionen
  6. Aktiviert ADB Debugging und Bluetooth Debugging

androidwear_entwickler_2

Sollte noch keine Terminal-App installiert sein, wäre jetzt der passende Moment dies nachzuholen.

Android Terminal Emulator
Entwickler: Jack Palevich
Preis: Kostenlos

Nun sollte über den selben Weg auf dem Android Smartphone das USB-Debugging aktiviert werden, was wiederum in der Android Wear Companion App eine neue Funktion freischaltet: Debugging über Bluetooth. Diese Funktion muss ebenfalls aktiviert sein, was sich mit einer dauerhaften Benachrichtigung in der Statusleiste bemerkbar macht. In der Companion App selbst sollte ein Status-Fenster erscheinen mit den Angaben

Host: Nicht verbunden

Target: Verbunden

Damit sind die Grundvoraussetzungen erfüllt und der eigentliche ADB-Zugriff kann erfolgen. Dazu muss lediglich die Terminal-App gestartet und die folgenden Befehle eingegeben werden:

su
export HOME=/sdcard
setprop service.adb.tcp.port 5555
stop adbd
start adbd
adb devices

Der letzte Befehl sollte euer verbundenes Android Smartphone oder Android Tablet anzeigen, wenn alles geklappt hat. Ist dies nicht der Fall, kann man sich mit dem Befehl adb kill-server vor dem start adbd Kommando das Problem eventuell schon beheben. Hilft auch das nicht, kann man die Verbindung auch statisch mit dem folgenden Kommando herstellen:

adb connect localhost:5555

Nun sollten die letzten beiden Befehle auch funktionieren und die Verbindung zwischen Smartphone und Android Wear Smartwatch stehen.

Um jedoch die echte ADB-Verbindung aufzubauen, ist noch ein bisschen mehr nötig:

adb forward tcp:4444 localabstract:/adb-hub
adb connect localhost:4444

Spätestens an dieser Stelle sollte eine Sicherheitsfrage auf der Smartwatch erscheinen, welche fragt, ob man tatsächlich die ADB-Verbindung herstellen möchte und ob diese auch sicher sei. Die Frage wird bestätigt – das Häkchen für die dauerhafte Genehmigung nicht vergessen! – und nun steht die eigentliche ADB-Verbindung über Bluetooth zwischen Android Smartphone und Android Wear Smartwatch.

Jetzt geht der Spaß erst richtig los

Hat alles geklappt, sollten mit dem Kommando adb devices nun zwei Geräte angezeigt werden:

emulator-5554 device
localhost:4444 device

Ist dies der Fall, hat alles geklappt und wenn nicht, versucht die Lösungsansätze für Probleme ein Stück weiter oben. Eine weitere Besonderheit besteht in der Ausführung der ADB-Befehle: Es muss für jeden Befehl auch das Ziel mit angegeben werden, was in diesem Fall das zweite Gerät mit der localhost-Angabe wäre, denn dabei handelt es sich um die Android Wear Smartwatch. Hier mal ein kleines Beispiel, um eine Shell auf der Android Wear Smartwatch zu öffnen:

adb -s localhost:4444 shell

Damit sollte nun alles Mögliche machbar sein, ausgenommen die fastboot-Dinge. Diese sollte man zur Sicherheit mit einem echten Desktop-Rechner und einem USB-Kabel durchführen, wozu unter anderem das Flashen von OTA-Updates in signierter ZIP-Form zählen. Sollte theoretisch zwar auch mit der hier beschriebenen Methode funktionieren, aber getestet ist sie nicht.

Andere Möglichkeiten wären unter anderem das Anfertigen von Screenshots auf der Smartwatch und diese im Anschluss auf die Speicherkarte respektive den internen Speicher des Android Smartphones zu kopieren:

adb -s localhost:4444 shell screencap -p /sdcard/screenshot.png
adb -s localhost:4444 pull sdcardscreenshot.png /sdcard/Pictures

Für App-Entwickler ist hingegen das Debuggen einer App eventuell interessanter, was folgendermaßen aussehen sollte:

adb -s localhost:4444 logcat

Jedoch ist dieser Einsatz auf einer Smartwatch durchaus fraglich, was auf die Größe des Smartphone-Displays zurückzuführen ist. Da hat das Kopieren einer APK-Datei – Minecraft läuft zum Beispiel auch auf Android Wear (zum Beitrag) schon mehr Sinn. Die APK-Datei sollte dabei im internen Speicher des Smartphones liegen:

adb -s localhost:4444 install /sdcard/diezuinstallierendeapp.apk

Mit einem Neustart der Android Wear Smartwatch werden die zuvor eingestellten Ports für TCP/IP wieder auf ihre ursprünglichen Werte zurückgesetzt. Soll das Alles ohne einen Neustart erfolgen, reichen diese Kommandos in der Terminal-App auf dem Android Smartphone oder Android Tablet aus:

setprop service.adb.tcp.port -1
stop adbd
start adbd

Viel Spaß bei den nun gewonnenen Möglichkeiten, welche ADB im Zusammenspiel mit einer Android Wear Smartwatch so ermöglicht.

[Quelle: XDA Developers]

The following two tabs change content below.
Mann mit Bart und Faible für Smartphones und Tablets jeder Plattform, doch eindeutig bekennender Androidliebhaber.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*


225 Abfragen in 0,657 Sekunden