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?

2voto

AskNilesh Punkte 63763

Es gibt zwei Möglichkeiten, Ihr Android-Gerät mit ADB über TCP? zu verbinden.

Erster Weg

Folgen Sie diesen Schritten

Verwenden Sie zunächst den folgenden Befehl, um die IP-Adresse Ihres Geräts zu ermitteln

adb shell ifconfig

OUTPUT des obigen Befehls

wlan0     Link encap:UNSPEC    Driver icnss
          inet addr:XXX.XXX.X.XX  Bcast:XXX.XXX.X.XXX

Mit Hilfe des obigen Befehls können Sie die IP-Adresse des angeschlossenen Geräts ermitteln

Verwenden Sie nun folgenden Befehl

adb tcpip 5555

Mit dem obigen Befehl wird dieser TCP-Port neu gestartet: 5555

Verwenden Sie nun den folgenden Befehl, um Ihr Gerät zu verbinden

adb connect XXX.XXX.X.XXX:5555
            ^^^ ^^^ ^ ^^^
        IP Address of device

Zweiter Weg

Sie können das Android Studio Plugin verwenden Android device with ADB

Android WiFi ADB - IntelliJ/Android Studio Plugin

Das IntelliJ- und Android Studio-Plugin wurde entwickelt, um Ihr Android-Gerät schnell über WiFi zu verbinden, um Ihre Anwendungen zu installieren, auszuführen und zu debuggen, ohne dass ein USB angeschlossen ist. Drücken Sie eine Taste und vergessen Sie Ihr USB-Kabel

Für weitere Informationen lesen Sie bitte diesen Artikel

Android-Gerät mit Wifi in Android Studio verbinden

2voto

TuomasG Punkte 63

Eine zusätzliche Anmerkung (auf die harte Tour gelernt): Sie sollten Ihre Firmen-VPN-Verbindung nicht gleichzeitig aktiv haben...

1voto

Joe C Punkte 2588

Auf meinem System lief es folgendermaßen ab:

Auf meinem Android-Gerät in meiner Linux-Shell konnte ich mit einem einfachen "ifconfig" meine IP-Adresse nicht ermitteln. Ich musste sie eingeben:

ifconfig eth0

-oder-

netcfg

um meine IP-Adresse zu erhalten. (Ich wusste, dass eth0 konfiguriert war, weil ich es in meiner dmesg sah.) Dann habe ich die :

setprop service.adb.tcp.port -1

adbd anhalten

adbd starten

Dann auf meinem Win7-Rechner (der mit Eclipse 3.7.1). Ich öffnete eine Eingabeaufforderung zu

\android -sdk \platform -Werkzeuge>

ohne als Administrator zu arbeiten. Dann habe ich eine

adb connect 12.345.678.90

Ich habe nie einen Anschluss gelegt. Wenn ich einen

adb tcpip 5555

es sagte, dass es das Gerät nicht finden konnte, dann erschien nichts in meiner "adb devices" Liste. D.h. es funktioniert nur, wenn ich den oben genannten tcpip-Befehl NICHT ausführe.

Ich kann eine "adb shell" ausführen und mit meinem Android-Gerät herumspielen. Aber mein Android-Gerät erscheint nicht in meiner Registerkarte Ausführen->Ausführungskonfigurationen->Ziel. Wenn ich andererseits die Registerkarte "Ziel" auf "automatisch" einstelle. Wenn ich dann meine Anwendung über Ausführen->Ausführen ausführe, wird sie auf meinem Android-Gerät ausgeführt, obwohl mein Android-Gerät nicht einmal als eines meiner Ziele aufgeführt ist.

1voto

ConcernedParty Punkte 11

Verwenden Sie die adbwireless-App, um das Telefon zu aktivieren, und verwenden Sie dann adb connect auf dem Windows-Rechner, um mit dem Telefon zu kommunizieren. Die adbwireless-App auf dem Telefon sagt Ihnen, wie Sie sich mit dem Telefon verbinden können, und gibt die IP-Adresse und alles andere an.

Die weniger unterhaltsame Alternative ist, die Verbindung über USB herzustellen, dem Telefon mit adb tcpip 5555 mitzuteilen, dass es TCPIP verwenden soll, dann die USB-Verbindung zu trennen und dann adb connect zu verwenden. Dies ist viel schwieriger, weil Sie auf diese Weise die IP-Adresse des Telefons selbst herausfinden müssen (adbwireless sagt Ihnen die IP), Sie müssen über USB verbinden, und Sie müssen adb tcpip ausführen (adbwireless kümmert sich auch um das).

Also: Installieren Sie adbwireless auf Ihrem Telefon. Benutzen Sie es. Es ist möglich, ich mache es routinemäßig unter Linux und unter Windows.

1voto

Abdul Wasae Punkte 3576

Wenn Sie dies mit einem Mausklick erreichen wollen, dann klicken Sie auf die Schaltfläche:

  1. In Android Studio -> Einstellungen/Preferences -> Plugins -> Browse Repositories
  2. Suche 'ADB wifi'
  3. Android Studio installieren und neu starten
  4. Verbinden Sie Ihr Gerät (mit aktiviertem USB-Debugging) über USB mit Ihrem Computer (Sie müssen dies nur einmal pro Sitzung tun)
  5. Werkzeuge -> Android -> ADB WIFI -> ADB USB ZU WIFI (Oder verwenden Sie die erwähnte Tastenkombination. Für MacOS: ctrl + shift + w)

Hinweis: Wenn es nicht funktioniert hat:

  1. Die Firewall Ihres WLAN-Routers blockiert möglicherweise die Verbindung.
  2. ABD ist möglicherweise nicht auf Ihrem Computer installiert.

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