Wann immer ich versuche zu rennen adb devices
:
$ adb devices
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
HT0ANRV05740 device
Der Daemon wird nicht ausgeführt und der Daemon wird neu gestartet.
Wenn ich dann wieder adb-Geräte starte, macht es dasselbe -
$ adb devices
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
HT0ANRV05740 device
Wenn ich es dann erneut starte, macht es genau das Gleiche -
$ adb devices
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
HT0ANRV05740 device
Bitte helfen Sie !!
Außerdem gibt mir mein DDMS immer wieder die folgende Nachricht:
[2011-02-23 16:17:05 - DeviceMonitor]Adb connection Error:An existing connection was forcibly closed by the remote host
Hier sind die Protokolle von kurz vor dem Neustart von adb -
1291 locapi_rpc_glue V loc_ioctl
1291 RPC D written RPC packet size: [480]
1291 RPC D read RPC packet
1291 RPC D read RPC packet size: [28]
1291 lib_locapi V qct_loc_eng_inject_xtra_data, inject part = 100, len = 167, len = 167
1291 lib_locapi V qct_loc_eng_inject_xtra_data, total part = 100, len = 167
1291 locapi_rpc_glue V loc_ioctl
1291 RPC D written RPC packet size: [248]
1291 RPC D read RPC packet
1291 RPC D read RPC packet size: [28]
1291 lib_locapi D qct_loc_eng_inject_xtra_data: injected 39767, SUCCESS
1291 lib_locapi V inject_xtra_waiting = flase
1291 GpsLocationProvider D Releasing wakelock
1291 WifiService D releaseWifiLockLocked: WifiLock{NetworkLocationProvider type=2 binder=android.os.Binder@47aead50}
1291 WifiService D enable and start wifi due to updateWifiState
1218 rmt_storage I rmt_storage open event
1218 rmt_storage I rmt_storage client thread started
1218 rmt_storage I rmt_storage events processing done
1218 rmt_storage I rmt_storage register cb event
1218 rmt_storage I rmt_storage status id = 2
1218 rmt_storage I rmt_storage events processing done
1218 rmt_storage I rmt_storage open event
1218 rmt_storage I rmt_storage client thread started
1218 rmt_storage I rmt_storage events processing done
1218 rmt_storage I rmt_storage register cb event
1218 rmt_storage I rmt_storage status id = 2
1218 rmt_storage I rmt_storage events processing done
1218 rmt_storage I rmt_storage write event
1218 rmt_storage I unblock rmt_storage client thread
1218 rmt_storage I rmt_storage events processing done
1218 rmt_storage I rmt_storage write: bytes written = 3145216
1218 rmt_storage I rmt_storage write: bytes written = 512
1218 rmt_storage I rmt_storage status handle = 1
1291 BatteryStatsImpl I notePhoneSignalStrengthLocked: 4->3
1218 rmt_storage I rmt_storage write event
1218 rmt_storage I rmt_storage events processing done
1218 rmt_storage I unblock rmt_storage client thread
1291 PowerManagerService D New lightsensor value:40, lcdValue:143
1291 PowerManagerService D lightSensorChangedLocked, buttonValue >= 0, mPowerState = 3
1218 rmt_storage I rmt_storage write: bytes written = 3145216
1218 rmt_storage I rmt_storage write: bytes written = 512
1218 rmt_storage I rmt_storage status handle = 2
1291 RPC D read RPC packet
1291 RPC D read RPC packet size: [80]
1291 locapi_rpc_glue V Callback received: 80 (cb_id=0x50B0000 handle=1)
1291 RPC D written RPC packet size: [28]
1470 usicWidgetController D unbindMusicPlaybackService()
1707 MediaPlaybackService E BadQueue mPlayListLen : 0 mAlbumListLen : 0 mShrinkAlbumListLen : 0
1291 NotificationService V Battery Full, Charging
1291 lights E write ok string=0,len=1
1291 lights E write ok string=0,len=1
1291 lights E write ok string=0 0,len=3
1291 lights E write ok string=1,len=1
1707 MediaPlayer.java D setOnCompletionListener being cleaned to null
1291 lights E write ok string=0,len=1
1291 lights E write ok string=0 0,len=3
1291 NotificationService V Turn off Jogball/OJ LED
1291 NotificationService D cancelNotification, ACTION_NOTIFICATION_REMOVE,pkg=com.htc.music,id=1
1291 AudioService I AudioFocus abandonAudioFocus() from android.media.AudioManager@476ddee0com.htc.music.MediaPlaybackService$5@476dd838
aosp/out/host/darwin-x86/bin/adb
,adb-aosp
weilaliasing
meine lokale Version (außerhalb von AOSP) nicht funktioniert hat.Antworten:
Verwenden Sie Genymotion für ein virtuelles Gerät?
Wenn ja, ist dieser Fehler wahrscheinlich aufgetreten, weil ADB von Genymotion mit Ihrem ADB von Android SDK (unter Verwendung derselben Portnummer) in Konflikt stand. Um dies zu beheben, gehen Sie einfach zu
settings
=> wählen Sie dieADB
Registerkarte => klicken Sie auf die OptionUse custom Android SDK Tools
und legen Sie Ihren SDK-Ordner festNachdem Sie dies konfiguriert haben, versuchen Sie, Ihre ADB neu zu starten, indem Sie in den Ordner gehen, in
platform-tools
demadb
sich der folgende Befehl befindet, und führen Sie den folgenden Befehl aus:./adb kill-server
./adb start-server
* Tipps: Sie können den Prozess von Genymotion schließen, bevor Sie den obigen Befehl ausführen
Ich hoffe das hilft.
quelle
Ich habe Dell PC Suite und HTC Sync von meinem Computer deinstalliert und dieses Problem ist behoben.
BEARBEITEN: Um die Ursache dieses Problems etwas näher zu erläutern: Die HTC-Synchronisierung wird mit einem eigenen ADB-Server geliefert. Außerdem wird Ihre Umgebungsvariable PATH aktualisiert, um auf die Version des Servers zu verweisen. Bearbeiten Sie die Variable PATH und entfernen Sie den Verweis auf die HTC Sync-Verzeichnisse. Jetzt verwenden Sie wieder ADB von Google.
quelle
adb start-server
funktioniert.Ich muss den Server gelegentlich explizit manuell beenden und neu starten:
Dieser Schock reicht im Allgemeinen aus, um ihn wieder auf die Beine zu bringen, und verhindert wiederholte
adb server is out of date. killing...
Meldungen.quelle
adb kill-server
bis "Daemon läuft nicht ..."Stellen Sie sicher, dass keine anderen ADB-Prozesse ausgeführt werden
Auf dem System wird möglicherweise mehr als ein ADB-Prozess ausgeführt. Tools wie Android Reverse Tether verwenden möglicherweise eine eigene Version des ADB-Tools. Daher kann die Version im Speicher mit der über die Befehlszeile (über die Pfadvariable) ausgeführten Version in Konflikt stehen.
Windows
In Windows drücken Sie CTL+ Shift+ für ESCden Zugriff Task - Manager, sortiert in der Bildnamen Spalte, tötet dann alle Instanzen
adb.exe
durch einen Rechtsklick und die Auswahl Prozess beenden . Beachten Sie, dass es mehrere Beispiele füradb.exe
Folgendes gibt:Linux (Android)
Verwenden Sie in einer Linux-Umgebung einfach den
kill -9
Befehl. So etwas funktionierte auf einem Android-Gerät, das ausgeführt wirdadb
(ps
Ausgabe verwenden, nachgrep
einem Prozess suchen, der mit beginntadb
, die Prozess-ID von denadb
Prozessen abrufen und diese ID an denkill -9
Befehl senden ):Starten Sie dann adb neu
Sobald die
adb
Prozesse - und damit Konflikte - gelöst sind, wiederholen Sieadb
den Vorgang erneut über die Befehlszeile:quelle
Auf meinem Computer (Ubuntu 14.04 und Genymotion 2.5.2) war die Ursache des Problems, dass ich 2 ADB-Dateien verschiedener Versionen hatte.
(Zuvor hatte ich, um diese Problemquelle einzugrenzen, Genymotions Einstellungen> "Benutzerdefinierte Android SDK-Tools verwenden", die sich auf das auf meinem Computer installierte Android SDK-Verzeichnis beziehen, wie von Aditya Kresna Permana empfohlen. Ich habe auch versucht, den ADB-Server und einige andere zu beenden und zu starten Lösungen aus dem Internet).
Dann sah
adb version
ich , dass aus meinem Android SDK-Installationsverzeichnis "~ / Android / Sdk / platform-tools" "Android Debug Bridge Version 1.0.32"Der
adb version
Befehl aus dem Verzeichnis "/ usr / bin" wurde jedoch erstellt - "Android Debug Bridge Version 1.0.31".Also einfach folgen - http://bernaerts.dyndns.org/linux/74-ubuntu/328-ubuntu-trusty-android-adb-fastboot-qtadb , um die ADB in "/ usr / bin" zu aktualisieren.
Und jetzt
adb devices
funktioniert das Laufen wie erwartet.Außerdem wurde das damit verbundene Problem gelöst, dass meine PhoneGap (Cordova) -App nicht in das virtuelle Gerät von Genymotion integriert wurde. Jetzt ist natürlich auch dieses Problem gelöst.
quelle
Dies liegt daran, dass Sie eine andere als die im SDK enthaltene ADB ausführen. Wenn unter Linux, überprüfen Sie, wo sich die ADB-Binärdatei befindet
Wenn Sie nicht auf ANDROID_SDK / platform-tools / adb verweisen, wird eine alte Version von adb ausgeführt, die an einem anderen Speicherort auf dem Computer installiert ist.
Es ist nichts Falsches daran, adb anders als das mit SDK gelieferte auszuführen, aber der Nachteil ist, dass es nicht automatisch aktualisiert wird, wenn das Android SDK aktualisiert wird, und deshalb stoßen Sie auf dieses veraltete Versionsproblem.
Um dieses Problem einfacher zu beheben und in Zukunft zu vermeiden, benennen Sie die ältere (irreführende) ADB-Binärdatei in etwas anderes um.
Befolgen Sie die Schritte, um dieses Problem zu beheben.
quelle
Ich habe gerade HTC Sync beendet, es erneut versucht und es hat funktioniert. Hinweis: Das Telefon wurde schwarz (gesperrt), ich habe es gerade eingeschaltet und meine Anwendung wurde ausgeführt. :) :)
quelle
System: Windows 10
Mein Problem : Das Festlegen von Genymotion auf das benutzerdefinierte SDK hatte keine Auswirkungen. Ich erhielt immer noch die:
Was ich entdeckte, war, dass es einen Unterschied in den ADB-Versionen gab, die im gesamten System verwendet wurden. Hier ist der Befehl, mit dem ich sie gefunden habe:
Dies ergab die Ergebnisse:
Zu jedem Verzeichnis navigieren und ausführen:
Ich durfte sehen, dass auf der Expo die ADB-Version ausgeführt wurde:
Während Genymotion mit dem benutzerdefinierten SDK die Version hatte (c: \ Users \ kyle \ AppData \ Local \ Android \ Sdk \ platform-tools \ adb.exe):
Als Test habe ich die adb-Dateien (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll) von genommen
und legte sie in einen Sicherungsordner. Ich habe dann die ADB-Dateien verschoben, die sich unter befinden
in den gleichen Ort. Ich habe adb getötet mit:
Dies führte automatisch zu einem Neustart des ADB-Servers, da mein Genymotion-Gerät bereits ausgeführt wurde. Ich drückte auf die Schaltfläche "Neustart" in der Expo XDE und es begann sofort zu funktionieren. Hier ist das Protokoll, in dem ich um 01:13:04 Uhr auf die Schaltfläche zum Neustart geklickt habe:
Schlussfolgerung : Genymotion und Expo müssen möglicherweise dieselbe Version von adb verwenden, damit Expo ordnungsgemäß mit dem simulierten Gerät kommunizieren kann. Wenn Sie Genymotion auf Ihren Android SDK-Standort verweisen und sicherstellen, dass Expo XDE dieselbe Version hat, können Sie korrekt zwischen Geräten kommunizieren. Ich habe die Expo XDE-Version an den SDK-Speicherort verschoben, aber Sie können möglicherweise auch in die andere Richtung gehen (nehmen Sie die SDK-ADB-Dateien und platzieren Sie sie am Speicherort der Expo XDE-Ressource).
PS: Ich habe alle Stackoverflow-Beiträge zu diesem Problem durchgesehen. Nur damit ihr wisst, dass mein Task-Manager drei Instanzen von adb.exe anzeigt. Wenn Sie einen von ihnen töten, kommen sie einfach zurück.
Hoffe das hilft / jubelt
quelle
Es scheint, dass der ADB-Dämon auf dem Gerät (adbd) nicht mit dem ADB-Serverprozess auf Ihrem Host-Computer übereinstimmt, welche Version des Protokolls sie sprechen. Welche Version des SDK führen Sie aus und wie lautet die Betriebssystemversion auf dem Gerät, das Sie debuggen?
Möglicherweise müssen Sie Ihre Version der SDK-Tools herunterstufen, damit ADB-Daemon und -Prozess übereinstimmen. Ich dachte, der Serverprozess sei vollständig abwärtskompatibel, aber dies könnte einer der Eckfälle sein, in denen dies nicht der Fall ist. Google macht keine Werbung dafür, dass Sie die alten SDK-Toolpakete erhalten können. Sie finden sie jedoch im Archivbereich unter http://developer.android.com .
quelle
adbd
undadb server
, sondern zwischenadb server
undadb client
(beide laufen auf dem PC)Ich habe einen schnellen Weg, es zuerst zu tun
Dann
Der schnellste Weg, um das Problem zu beheben
quelle
Ich habe einfach die HTC-Synchronisierungsanwendung vollständig geschlossen und es erneut versucht. Es funktionierte wie es sollte.
quelle
Ich schlug meinen Kopf gegen die Wand. Dies begann, als ich die neueste Version von HTC Sync (3.0.5579) installierte. Aus irgendeinem Grund wurde adb.exe mehrmals im Task-Manager angezeigt und ich habe festgestellt, dass der adb-Server mehrmals veraltet ist und Fehler beendet. Ich habe die adb.exe-Version im HTC-Synchronisierungsverzeichnis und im Android SDK-Plattform-Tools-Verzeichnis gefunden. Ich hatte das Pfad-Setup korrekt auf das Android SDK-Verzeichnis und sah den HTC Sync-Pfad nicht (vielleicht fehlte mir etwas, aber ich glaube nicht). Um das Problem zu beheben, habe ich die Datei adb.exe im HTC Sync-Verzeichnis einfach umbenannt und alles hat wieder funktioniert. Dies ist möglicherweise nicht der richtige Weg, um dieses Problem zu beheben, aber es hat bei mir funktioniert.
quelle
Hat mir geholfen: Stoppen Sie HTC Sync (in der Taskleiste) und benennen Sie die adb.exe von HTC um (C: \ Programme (x86) \ HTC \ HTC Sync 3.0 \ adb.exe).
quelle
System: Windows 7, Android Studio.
Dieser Fehler trat auf, als ich über die
adb devices
Windows-Befehlszeile ausgeführt wurde.Die Hauptursache war, dass die ADB, die ich über die Befehlszeile ausführte, nicht dieselbe ADB war, die unter Android Studio ausgeführt wurde.
Lösung:
Beenden Sie zuerst alle laufenden ADB-Prozesse auf dem Computer.
taskkill /F /IM adb.exe
Führen Sie Ihre App von Android Studio aus.
Suchen Sie den genauen Dateispeicherort von adb.exe entweder im Windows Task-Manager oder indem Sie den folgenden Befehl ausführen
wmic process where "name='adb.exe'" get ProcessID, ExecutablePath
Führen Sie
where adb
an der Windows-Eingabeaufforderung aus, um die ADB zu suchen, die an der Eingabeaufforderung ausgeführt wird. Dieser Pfad würde sich von dem in Schritt 3 oben unterscheiden.Bearbeiten Sie die Windows-Systemvariable PATH. Löschen Sie den in Schritt 4 gefundenen Basispfad.
Nachdem Sie PATH bearbeitet haben, können Sie den aktuellen Inhalt dieser Variablen anzeigen, indem Sie den folgenden Befehl in eine NEUE Eingabeaufforderung eingeben (verwenden Sie keine alte Eingabeaufforderung.)
echo %PATH%
Führen Sie nun adb an der Eingabeaufforderung aus. Es sollte KEIN "Server veralteter Fehler" angezeigt werden!
quelle
Versuche dies:
Schließen Sie die Eclipse-Anwendung.
adb kill-server
Starten Sie Eclipse neu.
quelle
Schließen Sie zuerst alle Dinge, die ADB verwenden. (Android Studio, Eclipse, Emulator (auch Bluestack)) und dann
In meinem Fall habe ich gerade ein Update von Studio bekommen.
quelle
Ich erlebte ein ähnliches Problem , wo meine Versuche zu verwenden ,
adb
wieadb logcat
vorgesehen diesen Fehler ausgegeben:adb server version (40) doesn't match this client (36); killing...
Diese Lösung funktionierte 2018 für mich unter Ubuntu 18.04 von Android Studio 3.2.1 mit Terminal.
Die Befehle lauten wie folgt:
Möglicherweise müssen Sie die
cp
Befehlsargumente basierend auf dem Pfad zuAndroid/
auf Ihrem System anpassen .Ein großes Lob an meine Quelle: https://stackoverflow.com/a/40991118/7015599
quelle
Okay, es gibt eine weitere Instanz von adb.exe, die mit "Lenovo Photo Companion" vertrieben wird. Ein Freund von mir hat ein Lenovo Yoga Notebook und hatte diese Software installiert, die eine weitere adb.exe enthielt
Durch die Deinstallation wurde das Problem behoben.
quelle
Betriebssystem: Ubuntu
Es laufen mehr als 1 ADB. Überprüfen Sie die aktuelle Anzeige:
Normalerweise ist das Ergebnis:
Löschen Sie diese ältere Version durch:
quelle
Haben Sie versucht, das SDK Version 8 zu verwenden? Da sich das Gerät in Version 2.2 befindet und Ihr SDK auf 10 eingestellt ist, liegt möglicherweise ein Konflikt vor.
Viel Glück bei deinen Herabstufungsbemühungen !! Hoffe das löst sich.
quelle
Wenn es sich bei dem Gerät, mit dem Sie interagieren möchten, um ein physisches Telefon handelt, das über USB angeschlossen ist, können Sie es ausstecken und wieder einstecken, und es sollte funktionieren. Manchmal ist es einfach nicht mehr synchron, denke ich.
quelle
Ich hatte dieses Problem auf einem meiner Entwicklungscomputer (alle führen Windows 7 x64 aus), während die ADB aller anderen Computer normal funktionieren. Der Grund, warum ich auf dieses Problem gestoßen bin, ist, dass ich eine alte Version von adb.exe in % android-sdk% \ tools habe, während neuere Android SDKs adb.exe unter % android-sdk% \ platform-tools haben
Entfernen Sie die ältere adb.exe aus% android-sdk% \ tools und fügen Sie% PATH%% android-sdk% \ platform-tools hinzu, um dieses Problem zu beheben
oder allgemeiner: Suchen Sie nach veralteten ADB-Dateien in Ihrem Pfad, die veraltet sind. Verwenden Sie einfach die neueste Version, die mit dem Android SDK bereitgestellt wird
quelle
Ich habe alle Antworten auf SO durchgesehen und es hat bei mir nicht funktioniert. Als ich den Prozess adb.exe im Task-Manager beendet habe, wurde er immer wieder geöffnet. Der Grund dafür war, dass Droid Explorer im Hintergrund arbeitete .
Das Beenden des DE-Prozesses über den Task-Manager und das anschließende Beenden von adb.exe (und das erneute Ausführen von der Konsole über 'adb start-server') hat bei mir funktioniert.
Dies kann für viele Personen nützlich sein , die ihre Geräte gerootet haben .
quelle
End process tree
im Task-Manager für den Droid Explorer-Dienst sicher .Leider habe ich noch nicht genug Ruf, um einen Kommentar abzugeben. Aber die als Antwort gekennzeichnete Antwort hat mich in die richtige Richtung geschickt.
Ich habe in meinem Pfad nichts im Zusammenhang mit HTC Sync Manager gesehen, obwohl ich es installiert hatte. Ich arbeite zurzeit nicht mit meinem HTC-Gerät und habe nur den Synchronisierungsmanager installiert, um bei Treiberproblemen zu helfen. Nach der Deinstallation des HTC Sync Managers ist dieses Problem für mich behoben.
Hoffe das hilft jemand anderem.
quelle
In meinem Fall wurde das Problem durch Virtuous Ten Studio verursacht, dessen
External/ADB
Verzeichnis die Datei adb.exe enthält .Geh dorthin und renne
.\adb.exe kill-server
und du wirst gut sein.quelle
Dies wurde in meinem Fall durch das Ausführen von Visual Studio mit einem Android Xamarin-Projekt auf demselben Computer wie Android Studio verursacht - auf jeder IDE wurde eine andere ADB-Serverversion ausgeführt. Ich habe Visual Studio geschlossen und der Fehler ist verschwunden.
quelle
Wie oben erwähnt, liegt das Problem an einer widersprüchlichen Version von adb.exe, die mit HTC Sync geliefert wird . Das Entfernen aus PATH hilft nicht weiter, da htcUPCTLoader.exe , das ständig im Hintergrund ausgeführt wird, immer noch die falsche ADB-Version neu startet.
Eine Lösung wäre, adb.exe vollständig aus dem HTC Sync-Ordner zu entfernen. Dies würde jedoch HTC Sync beschädigen .
Ich habe gerade ein einfaches Tool codiert , das die alte adb.exe durch einen Stub ersetzt, der die neueste adb.exe aus dem SDK-Verzeichnis aufruft, um die Konflikte zu beseitigen (z. B. Version 1.0.25 mit HTC Sync und 1.0.29 mit Android SDK). .
Das Tool kann von http://visualgdb.com/adbfix heruntergeladen werden
quelle
Ich hatte heute auch dieses Problem. Es stellte sich heraus, dass ich meine Netzwerktreiber deaktiviert habe, weil ich Probleme mit WIFI / LAN hatte. Durch erneutes Aktivieren wurde das Problem behoben
quelle
Installation von SDK-Updates (einschließlich Plattform-Tools) für mich behoben!
quelle
Da ADB Server veraltet ist. Töten ist jetzt ein Betrug dieser, Kopieren-Einfügen einer Lösung für Debian-basierte Systeme :
quelle