Android ADB über TCP/IP

20 Dec 2014 - tsp

Wenn das Gerät über USB Verbunden ist

In diesem Fall bietet adb auf dem PC bereits die nötige Funktionalität:

´´´ adb tcpip [port] ´´´

startet den adbd auf dem Gerät auf dem angegebenen Port (z.B. 5555). Der lokale ADB Daemon kann dann mittels

adb connect [ip:port]

eine Verbindung zu dem Gerät herstellen. Soll das Gerät wieder auf dem USB Port auf Verbindungen warten muss es via ADB verbunden sein. Dann kann

adb usb

verwendet werden um die Verbindung wieder via USB herzustellen.

Wenn nur eine Shell auf dem Gerät verfügbar ist

In diesem Fall wird die service.adb.tcp.port Property auf dem Gerät verändert und danach der adbd neu gestartet.

Um auf TCP Verbindungen zu warten:

setprop service.adb.tcp.port 5555
stop adbd
start adbd

Um wieder auf USB Verbindungen zu warten:

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

Diese Funktionen können natürlich auch aus Scripten heraus ausgeführt werden, die z.B. mit folgenden Kommandos in /data (setzt Root voraus, ohne Root kann z.B. /sdcard oder /mnt/storage verwendet werden) angelegt werden können (adbusb.sh wurde so modifiziert, dass am Ende eine Liste der aktuellen Netzwerkkonfiguration des Geräts angezeigt wird).

echo 'setprop service.adb.tcp.port 5555' > /data/adbtcp.sh
echo 'stop adbd' >> /data/adbtcp.sh
echo 'start adbd' >> /data/adbtcp.sh
chmod 750 /data/adbtcp.sh

echo 'setprop service.adb.tcp.port -1' > /data/adbusb.sh
echo 'stop adbd' >> /data/adbusb.sh
echo 'start adbd' >> /data/adbusb.sh
echo 'netcfg' >> /data/adbusb.sh
chmod 750 /data/adbusb.sh

This article is tagged: Android, Programming


Dipl.-Ing. Thomas Spielauer, Wien (webcomplains389t48957@tspi.at)

This webpage is also available via TOR at http://jugujbrirx3irwyx.onion/

Valid HTML 4.01 Strict Powered by FreeBSD IPv6 support