879 Stimmen

Wie kann ich eine Verbindung zu Android mit ADB über TCP herstellen?

Ich versuche, eine Anwendung auf einem Computer zu debuggen. Motorola Droid aber ich habe Schwierigkeiten, mich über USB mit dem Gerät zu verbinden. Mein Entwicklungsserver ist eine Windows 7 64-Bit-VM, die in Hyper-V und kann daher keine direkte USB-Verbindung im Gast oder vom Host herstellen.

Ich habe einige verschiedene USB-over-TCP-Lösungen installiert, aber die Verbindung scheint Probleme zu haben, da die ADB monitor meldet wiederholt "devicemonitor kann die Überwachung nicht starten". Gibt es eine Möglichkeit, eine direkte Verbindung zwischen dem Client auf dem Entwicklungscomputer und dem Daemon auf dem Gerät über das Netzwerk statt über die USB-Verbindung herzustellen, oder gibt es möglicherweise eine andere praktikable Option?

29voto

Thiago Punkte 11191

Zuerst müssen Sie Ihr Gerät über USB anschließen

Verbinden Sie dann Ihr Gerät mit dem WIFI und rufen Sie die IP-Adresse ab. Während Sie noch eine Verbindung über USB herstellen, geben Sie dies in der Kommandozeile oder über Android Studio Terminal ein

adb tcpip 5555
adb connect <device IP>:5555

Sie werden diese Meldungen sehen:

restarting in TCP mode port: 5555
connected to 172.11.0.16:5555

Ziehen Sie nun das USB-Kabel ab und Sie sehen Ihr Logcat wie gewohnt

Erledigt. Viel Spaß mit

21voto

Wenn Sie Ihr Gerät einfach anschließen möchten, um Ihre Android-Anwendungen über WiFi auszuführen, zu debuggen oder bereitzustellen, können Sie ein von mir entwickeltes Open-Source-Plugin für IntelliJ verwenden. Aquí ist der Code und aquí das Plugin ist bereit für die Verwendung.

Die Verwendung ist recht einfach. Hier haben Sie ein gif:

enter image description here

11voto

offcourse Punkte 326

Wie Brian sagte:

Laut einem Beitrag auf xda-developers können Sie ADB über WiFi vom Gerät aus mit den folgenden Befehlen aktivieren

setprop service.adb.tcp.port 5555

adbd anhalten

adbd starten

Und Sie können es deaktivieren und ADB wieder auf USB hören lassen mit

setprop service.adb.tcp.port -1

adbd anhalten

adbd starten

Wenn Sie bereits über einen USB-Zugang verfügen, ist es sogar noch einfacher, auf die Verwendung von WiFi umzustellen. Geben Sie in einer Befehlszeile auf dem Computer, an den das Gerät über USB angeschlossen ist, die folgenden Befehle ein

adb tcpip 5555

adb connect 192.168.0.101:5555

So teilen Sie dem ADB-Daemon mit, dass er wieder über USB lauscht

adb usb

Es gibt auch mehrere Apps auf dem Android Market, die diesen Vorgang automatisieren.

Es funktioniert. Sie müssen nur auf die Android-Shell zugreifen und diese Befehle eingeben...

Eine andere (einfachere) Lösung ist auf dem Markt: adbWireless, es wird Ihr Telefon automatisch einstellen.

Root ist erforderlich! für beide...

9voto

Chris Punkte 99
adb tcpip 5555

Seltsam, aber das funktioniert bei mir nur, wenn ich das USB-Kabel angeschlossen habe, dann kann ich den USB-Stecker abziehen und mit allem anderen adb gehen.

und dasselbe bei der Rückkehr zum USB-Anschluss,

adb usb

funktioniert nur, wenn usb angeschlossen ist.

Es spielt keine Rolle, ob ich die

setprop service.adb.tcp.port 5555

ou

setprop service.adb.tcp.port -1

dann stoppen und starten Sie adbd, ich brauche immer noch das USB-Kabel in oder es funktioniert nicht.

Wenn also mein ADB über USB nicht funktionierte, würde ich auch nicht in der Lage sein, ADB über WiFi zu aktivieren.

8voto

eleven Punkte 6702

Bash util-Funktion:

function adb-connect-to-wifi {
    ip="$(adb shell ip route | awk '{print $9}')"
    port=5555
    adb tcpip ${port}
    adb connect ${ip}:${port}
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X