ADB trennt ständig, zeigt Gerät offline

36

Ich bin nicht zu 100% sicher, ob dies hier oder der Hauptstapelüberlauf sein sollte, aber ich habe mich für diesen Bereich entschieden, in der Hoffnung, dass ich jemanden mit spezifischerer Erfahrung mit einem ähnlichen Problem erwischen könnte.

Ich habe ein Samsung Captivate (liebe es minus es ist beschissen GPS). Ich entwickle dafür auf 2 verschiedenen Computern, einen zu Hause, einen bei der Arbeit. Die Computer sind beide Windows XP, Service Pack 3, 32 Bit. Ich habe die gleichen Samsung-Treiber installiert, die gleichen Versionen von Eclipse usw. Auf dem Telefon ist derzeit der Serendipity-Mod als Root installiert, obwohl dieses Problem bei der Serienfirmware genau gleich war.

Mein Heimcomputer (das Problem) ist ein Athlon 64 mit 2,2 GHz. Meine Arbeitsmaschine ist ein Core 2 Duo, erinnere mich nicht an das Modell.

Bei der Arbeit kann ich alles tun, die SD-Karte in das Telefon einbinden und einfach kopieren, adb zum Pushen, Ziehen, Deinstallieren und Installieren verwenden. Ich kann in ddms debuggen, über Eclipse installieren, etc, etc ...

Wenn ich zu Hause sowohl den Computer als auch das Telefon neu starte und eine Eingabeaufforderung öffne, ohne dass Eclipse geöffnet ist, kann ich das Gerät möglicherweise sehen, indem ich adb devices eingebe. Normalerweise kann ich dann das logcat löschen oder das logcat ziemlich stabil laufen lassen. Wenn ich Eclispe (meine Entwicklungs-IDE) öffne und versuche, einen neuen Build einer App auszuführen, wird die Verbindung im Allgemeinen unterbrochen. Das gleiche passiert, wenn ich versuche, Dateien entweder durch Mounten oder durch Ziehen mit adb zu kopieren. Einige Dateien werden kopiert und plötzlich wird die Verbindung getrennt und das Gerät wird für adb offline oder nicht in der Liste oder zweimal offline aufgeführt. Ein Neustart des Telefons hilft manchmal, aber nicht immer. Es gibt Zeiten, in denen ich Eclipse und jede andere App schließe, mein Telefon neu starte und immer noch adb nicht in der Lage bin, das Gerät zu erkennen. ICH' Ich verwende adb kill-server und adb start-server, aber das hilft im Allgemeinen nicht. Ich verwende Avast für mein Virenschutzprogramm zu Hause, habe es jedoch ohne installiertes Virenschutzprogramm versucht und es ist dasselbe. Ich habe kürzlich Windows aufgrund eines Festplattenabsturzes neu installiert und es war genau das gleiche. Ich habe jeden anderen USB-Port an meinem Tower ausprobiert.

Ich hoffe sehr, dass mir jemand sagen kann, was falsch ist, da ich mich jetzt seit eineinhalb Jahren damit beschäftige und es mich dazu bringen wird, meinen Verstand zu verlieren.

-Jeremiah

Maximus
quelle
1
Ich habe ein ähnliches Problem, aber es ist nur eine lose Verbindung auf dem Kabel, das ich zu Hause
benutze
2
Wenn ich mein USB-Kabel abtrenne und wieder anschliesse, verschwindet das Problem. Ich weiß nicht, ob dies ein Kabelproblem oder ein Timeout-Problem ist. Irgendwelche Hinweise ?
Trojan.ZBOT
Das passiert mir die ganze Zeit, aber aus irgendeinem Grund nur, wenn ich im Auto debugge. Seltsam.
Dave Jensen
Mein mit dem Gerät geliefertes USB-Kabel ist für dieses Problem beim Debuggen berüchtigt. Das Aufladen ist jedoch in Ordnung. Wie auch immer, ich habe auf mein altes (und im Übrigen kürzeres) USB-Kabel getauscht und jetzt funktioniert es.
Pixel
Gleiches Problem mit Pixel 2 und Macbook Pro 15 Zoll 2018. Mein USB C zu USB Typ C Kabel ist das Original von Google
ericn

Antworten:

23

Der Umstieg von USB 3.0 auf USB 2.0 hat das Problem für mich gelöst. Die meisten Laptops werden heutzutage mit beiden Anschlusstypen geliefert.

Jaichander
quelle
1
du hast meinen Tag gerettet. Alte Telefone haben bei der Installation von APK
Climbatize
Gleiches Thema für mich. Es war auch ein neueres Gerät ... Es wurde jedoch ständig getrennt, wenn es an einen 3.0-Port angeschlossen wurde. Das Verschieben auf einen 2.0-Port hat super funktioniert.
Shawn Lehner
Es ist erstaunlich, ich denke nie, dass das Problem am USB-Port liegt.
Fangzhzh
Ja. Hatte das gleiche Problem wie @Climbatize. Musste USB-Anschlüsse austauschen, bis ich einen fand, der dem Gerät gefiel. Neuere Geräte haben keine Probleme mit denselben Anschlüssen, aber das ältere Gerät hat die Verbindung jedes Mal getrennt, wenn Android Studio versucht hat, ein APK zu installieren.
aroth
7

Schließen Sie Ihr Gerät über einen USB-Hub mit eigener Stromversorgung an. Einige Computer, einschließlich neuer Apple Macbooks, haben nicht genügend Strom in den USB-Anschlüssen, sodass ADB ständig getrennt wird.

Wenn Ihr Gerät gerootet ist, können Sie es über WLAN mit adb verbinden. Dies ist sehr komfortabel, viel mehr als nur kabelgebundenes USB. Natürlich haben Sie nicht immer ein gerootetes Gerät.

Grebulon
quelle
1
Interessant. Hat noch jemand Probleme mit tragbaren Macintosh-Geräten, die die angeschlossenen Geräte nicht ausreichend mit Strom versorgen?
Scott Biggs
2
Sie brauchen kein WIFI für TCP / IP ADB. Es muss nur eine funktionierende USB-ADB vorhanden sein, damit die ADB auf dem Telefon auf TCP / IP lauscht. damit verbunden auf usb adb, tippe adb tcpip 5555, trenne usb, tippe adb verbinde deine.phone.ip.number
Lassi Kinnunen
Ich kann nicht glauben, dass ich heute nur darauf gestoßen bin. Ich besitze ein MacBook Pro (Retina, 15 Zoll, Ende 2013) und habe dieses Problem seit Monaten und habe im gesamten Internet gesucht. Die Verbindung zu meinem Galaxy S6 wurde zufällig getrennt (häufig innerhalb von Sekundenbruchteilen, immer innerhalb einer Minute nach dem Herstellen der Verbindung). Ich habe es gerade über einen USB-Hub mit eigener Stromversorgung angeschlossen. Es funktioniert einfach Danke, @grebulon.
Pawel Decowski
Wir sind uns nicht sicher, ob dies in Zusammenhang steht oder nicht, aber der einfache Wechsel vom linken zum rechten USB-Anschluss eines MacBook Pro (Retina, 15-Zoll, 2012) hat das Problem anscheinend gelöst!
Jcaron
3

Das nervte mich ewig. Logcat würde verschwinden oder das Telefon müsste erneut an den USB-Anschluss angeschlossen werden, damit ADB es richtig sehen kann.

Was für mich funktionierte, war die Verwendung eines der hinteren USB-Ports an meinem PC. Die vorderen haben wahrscheinlich einen zweifelhaften Hub oder eine zweifelhafte USB-Hub-Software durchlaufen. Wenn Sie also vordere USB-Anschlüsse verwenden, probieren Sie die auf der Rückseite aus.

lynton
quelle
1

Früher hatte ich die gleichen Probleme und auch mein Logcat löschte und beendete die Aktualisierung in Eclipse. Der Unterschied besteht darin, dass ich damals auf einem offiziellen Samsung-ROM war. Nachdem ich zu Darkys ROM gewechselt habe, war die Stabilität viel besser. Trotzdem verschwindet das Gerät von Zeit zu Zeit, aber normalerweise wird es nach dem erneuten Anschließen des USB wieder angezeigt. Mein PC unterscheidet sich ein wenig von Ihrem (Atom D525, Win7), sodass ich bestätigen kann, dass er nicht auf ein einzelnes Gerät / Betriebssystem beschränkt ist.

Ich würde vorschlagen, das ROM erneut zu flashen oder wenn möglich zu aktualisieren. Sie können es auch mit einem anderen Telefon versuchen, um festzustellen, ob es sich um einen für Ihr Telefon spezifischen Fehler handelt. Auf der anderen Seite ist ADB nicht die stabilste Software, so dass es nur ärgerliche Schluckaufe geben kann.

onik
quelle
Ich könnte einen Buddies Vibrant ausprobieren ... das ist ein Gedanke ... trotzdem bin ich mir nicht sicher, ob der Rom ein Problem ist, da sich sowohl bei der Firmware als auch bei Serendipity alles genau gleich verhalten hat ... obwohl ich es war neugierig auf Firefly ... wir werden sehen.
Maximus
1

Für mich klingt es so, als hätten Sie schlechte Hardware oder Treiber zu Hause. Stellen Sie sicher, dass Sie nichts mit Kies zu tun haben. Kies + Samsung Windows-Treiber scheinen bei der USB-Verbindung ein unregelmäßiges Verhalten zu verursachen, das je nach Computer unterschiedlich ist ...

Probieren Sie zuerst verschiedene USB-Anschlüsse und -Kabel aus.

Zds
quelle
Ich stimme dem eher zu ... Ich bin der Meinung, dass im Grunde genommen etwas mit meinem Heimcomputer inkompatibel sein muss (Board / CPU / USB-Anschlüsse). Ich hatte jedoch keine Probleme mit anderen USB-Geräten. Ich verwende an beiden Stellen das gleiche Kabel. Also gut. Ich glaube, ich bin nur geschraubt. Ich war ein Haar von der Aufrüstung meiner Heimmaschine mit einem neuen Mobo entfernt ... also denke ich, dass das einfach passieren muss. Es ist scheiße, ich brauche ehrlich gesagt keine schnellere Maschine, die Entwicklung ist nicht besonders intensiv ...
Maximus
1

Ich hatte das gleiche Problem mit meinem Nexus 4, auf dem Cyogenmod 11 unter Windows 8 ausgeführt wird. Ich habe es über einen USB-Splitter angeschlossen, und mein Telefon hat die Verbindung innerhalb von Sekunden getrennt, nachdem es von LogCat / DDMS erkannt wurde. Der Wechsel zu einem physischen Port auf meinem Computer hat den Trick getan. In meinem Fall funktionierten die vorderen USB-Anschlüsse einwandfrei.

Mehmetcan Karahan
quelle
1

Ich hatte dieses Disconnect-Reconnect-Problem.

Ich habe mein Problem in den Windows USB Einstellungen gelöst:

1- Open device Manager.
2- Human interface Devices.
3- Right click in one of them or double click.
4- go to power management.
5- Uncheck the option of "Allow the computer to turn off this device to save power" than OK.
Note* try to use step #3-5 on all available option*

(von http://www.tomshardware.co.uk/answers/id-1783536/usb-ports-disconnecting-reconnecting.html )

rcperso
quelle
1

Ich benutze einen LG G3 Marshmallow. Ich weiß nicht warum, aber wenn ich es reparieren gehe Developer options > Networking section > Select USB Configuration > MTP.

Wenn ich zuvor mein Telefon an einen PC anschließe, friert das Treiberinstallationsfenster beim Start immer ein. Wenn ich jedoch zur MTP-Verbindung wechsle, wird es vom Treiberinstallationsfenster sofort erkannt und das Telefonsymbol wird zu einem LG-Telefonsymbol und die Installation wird beendet .

Daniel Cheung
quelle
Genial! Ich versuche die Hölle der Kommentare hier und nichts regelt es. Das war nur ein Zauber! Ich habe die Option "Aufladen" gesetzt und das Problem
behoben
1

Finde den Ort android-sdk-windows\platform-tools.

Öffnen Sie die Eingabeaufforderung und führen Sie die folgenden Befehle aus:

cd c: \ android \ sdk \ android-sdk-windows \ plattform-tools
adb.exe kill-server
adb.exe Start-Server

Diese Schritte können Ihr Problem lösen.

msolak
quelle
vergiss nicht, dein android-sdk-windows verzeichnis ist vielleicht anders. Sie müssen also die Zeichenfolge selbst ändern => c: \ android \ sdk \ android-sdk-windows \ plattform-tools
msolak
1
OP schrieb: " Ich benutze adb kill-server und adb start-server, aber das hilft im Allgemeinen nicht ".
Firelord
Dies ist eine Problemumgehung und keine Lösung.
dm78
0

Gleiches Thema hier; Ich benutze ADB unter Gnu / Linux ohne zusätzliche Treiber.

Umgehungslösung: Ziehen Sie den USB-Stecker heraus und stecken Sie ihn wieder ein

http://forum.xda-developers.com/showthread.php?p=17111464#post17111464

rzr
quelle
Derzeit ist meine Arbeitsmethode (und ich denke immer noch, das ist scheiße) zu bauen, Eclipse zu schließen und zu stecken und zu trennen, bis bei der Eingabe von adb-Geräten das Gerät angezeigt wird. Wenn mehr als ein Gerät angezeigt wird, schließen Sie den ADB-Kill-Server und die ADB-Geräte an. Extrem langweilig.
Maximus
2
Frustrierend ist, dass dieser Link zu einem Forum führt, das einen Link zu einer anderen Stack-Exchange-Site enthält, die auf diesen Thread verweist.
Bahamat
0

adb unter Debian / Ubuntu ist derzeit 1.0.29. Für die Verbindung mit Geräten mit Android 4.2.2+ ist 1.0.31 erforderlich, was diesen Fehler verursacht

https://bugs.launchpad.net/ubuntu/+source/android-tools/+bug/1131163

Sie können entweder das neueste Android-Entwicklungskit manuell installieren oder warten, bis die Debian-Leute das Paket aktualisiert haben

Arthur Ulfeldt
quelle
0

Ein anderes Problem mit denselben Symptomen bei der Aktualisierung auf MacOS Sierra. Hier ist ein Umgehungsskript:

#!/bin/bash

cat << EOF
###########################################################
# Workaround adb disconnecting issue on macOS Sierra
#
# More info:
# https://code.google.com/p/android/issues/detail?id=219085
# credits to: [email protected], [email protected]
###########################################################

EOF

function monitor_adb () {
  adb start-server
  echo "[$(date)] adb started"

  while [ "$(adb shell echo 1)" ]; do sleep 5; done

  echo "[$(date)] adb is broken, restarting"

  adb kill-server
  adb start-server || adb start-server
  adb reverse tcp:8081 tcp:8081
}

while [ true ]; do time monitor_adb ; done
Yanchenko
quelle
Das funktioniert bei mir nicht. Der Kill / Start wird ohne Glück wiederholt. MBP Retina 2015 Yosemite mit S6 Edge FYI.
Adam K Dean
1
Dies sollte nicht länger benötigt werden. Der Fehler wurde in 24.0.4 oder höher behoben. Wie hier zu sehen: code.google.com/p/android/issues/detail?id=219085
nilsi
0

Ich hatte das gleiche Problem, aber nur mit Android 6/7-Geräten und Mac-Host. Lösung war ... Gerät von "Laden" auf "Dateitransfer" umstellen.

Vikarti Anatra
quelle
0

Die folgenden beiden Lösungen haben bei mir funktioniert.

Sie können eine der beiden oder beide ausprobieren.

  1. Gerät neustarten.
  2. Geben Sie internen Speicherplatz frei (funktioniert in den meisten Fällen).
vbp
quelle
0

Hier ist meine Antwort mit einer adb pullEmulationsumgehung basierend auf adbund dd. Der Download wird wiederholt und fortgesetzt, wenn die Verbindung getrennt wird.

alopatindev
quelle
0

Dies geschieht jedes Mal, wenn Sie die ADB-Verbindung offen lassen, die Verbindung nach der Verwendung der ADB-Sitzung trennen müssen, um die Verbindung zu trennen, einfach ausführen

adb disconnect <ipaddress>

Sie ersetzen die IP-Adresse durch die IP-Adresse des Android-Geräts, genau wie bei ADB Connect.

Haytham-med Haytham
quelle