Ich habe HTC Comet mit SDK 2.2 mit Eclipse verbunden. Ich mache einen Debug-Build - die Anwendung wird nicht ausgeführt. obwohl es auf dem Gerät installiert wird. Auf dem Gerät wird dieses Meldungsfeld auf dem Kometenbildschirm angezeigt
Warten auf die Debugger-
Anwendung HunyDew (Prozess com.airvine.hunydew) wartet auf das Anhängen des Debuggers.
[Schließen erzwingen]
Während in der Eclipse-Konsole diese Nachrichten angezeigt werden
[2010-12-07 01:42:29 - hunydewprj] Android Launch!
[2010-12-07 01:42:29 - hunydewprj] adb is running normally.
[2010-12-07 01:42:29 - hunydewprj] Performing com.airvine.hunydew.HunyDewAAStartsHere activity launch
[2010-12-07 01:42:47 - hunydewprj] Application already deployed. No need to reinstall.
[2010-12-07 01:42:47 - hunydewprj] Starting activity com.airvine.hunydew.HunyDewAAStartsHere on device 308730C861BC
[2010-12-07 01:42:49 - hunydewprj] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.airvine.hunydew/.HunyDewAAStartsHere }
[2010-12-07 01:42:49 - hunydewprj] Attempting to connect debugger to 'com.airvine.hunydew' on port 8601
[2010-12-07 01:43:09 - hunydewprj] Launch error: Failed to connect to remote VM. Connection timed out.
Die Anwendung läuft gut im Emulator - bitte helfen Sie - was fehlt mir hier? Irgendwelche Hinweise / Vorschläge? Vielen Dank
Antworten:
Auf einigen Geräten kann der Debugger nur angehängt werden, wenn die Anwendung die Berechtigung android.permission.SET_DEBUG_APP in ihrer Manifestdatei festgelegt hat:
quelle
Das Dialogfeld Warten auf Debugger wird angezeigt, wenn Sie eine Debug-Anwendung erstellen oder irgendwo in Ihrem Quellcode Debug.waitingForDebugger () aufgerufen haben.
In Android Studio 2.0 und höher gibt es die Option Debugger an Android-Prozess anhängen. Dies ist der letzte Menüpunkt im Menü Ausführen.
quelle
Sie sind sich nicht sicher, ob Sie danach suchen, aber versuchen Sie Folgendes:
im Anwendungs-Tag in der
AndroidManifest.xml
quelle
Ich habe dieses Problem seit langem, dass ich meinen Android-Emulator oder mein Android-Gerät nicht mit dem Debugger verbinden kann, während sowohl die Konsole als auch der Emulator darauf warteten, eine Verbindung zum Debugger herzustellen .
Und die Konfiguration für das Debuggen in Eclipse hat mich vorher auch so verwirrt, aber heute habe ich dieses Problem durch die folgenden Schritte gelöst:
Wenn Sie ein Android-Projekt debuggen möchten, z. B. mypro . Sie würden mit der rechten Maustaste darauf klicken
"Package Explorer". Then choose "Debug as"-->"Android Application"
.Dann stoppt der Emulator möglicherweise beim "Warten auf Verbindung zum Debugger" (oder etwas Ähnlichem).
Anschließend müssen Sie selbst eine Verbindung zum Debugger herstellen, indem Sie auf "DDMS" klicken , um die DDMS-Perspektive zu öffnen, und auf die Registerkarte "Geräte" klicken .
Anschließend sehen Sie eine Liste der Prozesse, die auf Ihrem Emulator oder Gerät ausgeführt werden.
Doppelklicken Sie auf diejenige, die Sie debuggen, und wechseln Sie dann in die Debug-Perspektive. Sie können sehen, dass der Debugger verbunden ist, und Sie können Ihr Programm debuggen. So habe ich dieses Problem gelöst.
Mein Betriebssystem ist übrigens Win7 32-Bit. Die Version von Eclipse ist Helios Service Release 2. Das Android SDK ist rev. 16 und Plattform-Tools '10.
Aktualisieren.
Ich habe festgestellt, dass dies das Problem meiner TCP / IP-Konfiguration ist. Der Debugger kann nicht verbunden werden, wenn ich eine statische IP-Adresse zuweise (für den Zugang zum Internet).
Jedes Mal, wenn der Debugger keine Verbindung herstellen kann, führe ich die folgenden Schritte aus:
1. Schließen Sie das aktuelle Eclipse-Fenster.
2. Ändern Sie die Konfiguration der IP-Adresse in dynamisch. Dies bedeutet, dass Sie eine IP-Adresse per DHCP erhalten .
3. Öffnen Sie die Sonnenfinsternis erneut.
dann kann der Debugger verbunden werden. Ich dachte, es könnte ein Problem des internen Mechanismus des Java-Debuggers sein, der eine Socket-Verbindung verwendet.
quelle
Ich bekomme das, wenn ich das USB-Kabel an einen anderen Anschluss meines PCs schalte, seltsam, aber es funktioniert, wenn ich es wieder zurückschalte. Ich glaube auch, dass ich das habe, wenn ein anderes Gerät oder ein anderer Emulator gleichzeitig ausgeführt wird oder zwei Instanzen von Eclipse geöffnet sind.
quelle
Für diejenigen, die dieses nervige Verhalten in 4.2.2 erhalten, müssen Sie die Einstellung für "Warten auf Debugger" in den Entwickleroptionen deaktivieren. Natürlich wurden diese Optionen von Google ausgeblendet, und Sie müssen einen hinterhältigen Trick ausführen, damit sie wieder angezeigt werden. Ich hatte sie gesetzt, bevor sie verschwanden, und konnte sie für mein ganzes Leben nicht wiederfinden.
Diese Seite erklärt die Vorgehensweise
quelle
Beim Ausführen von Android Studio stieß ich auf dieses Problem, und nachdem ich verschiedene Abhilfemaßnahmen ausprobiert hatte, schien ein Neustart von Android Studio das Problem zu beheben.
quelle
Meine Lösung besteht darin, den Dalvik Debug Monitor zu verwenden. Manchmal gibt es neben einem Prozess einen roten oder grünen Fehler. Klicken Sie auf das Gerät, auf das Sie laden möchten. Wählen Sie die Registerkarte Aktionen und setzen Sie adb zurück. Dies hängt normalerweise den Debugger für mich an. Ich finde, dass das Debuggen über diesen Monitor für mich besser funktioniert als die Verwendung des Android Eclipse-Plugins Logcat.
quelle
Emulator schließen und Eclipse schließen. Das erneute Öffnen von Eclipse und das Starten des Simulators hat bei mir funktioniert.
Der Schlüssel, nach dem Sie suchen müssen, befindet sich im Gerätebereich von Eclipse. Wenn Sie den Emulator oder das Gerät starten und es in der Gerätenamenliste angezeigt wird, aber [null] sagt und keine laufenden Prozesse darunter angezeigt werden, funktioniert es beim Laden Ihrer App nicht richtig.
Wenn der Name des Geräts angezeigt wird und Online ist, scheinen die Dinge reibungslos zu funktionieren.
Ich weiß nicht, warum es nicht immer funktioniert.
quelle
In meinem Fall wird das Problem durch adb verursacht, das mit einem anderen Gerät verbunden ist.
Wenn mehrere Geräte an den PC angeschlossen sind, entfernen Sie andere Geräte als das erforderliche.
quelle
Am Ende gehe ich in die "Debug" -Perspektive.
Dann gibt es im "Debug" -Rahmen eine Debugliste oder eine Ausführungsliste.
Sie müssen entscheiden, welches Ihr aktuelles Problem ist (Warten auf Debug ...)
Klicken Sie dann mit der rechten Maustaste und wählen Sie "Beenden und Entfernen".
Dann versuchst du erneut zu rennen. Und diese Warnbox wird verschwunden sein.
quelle
Ein Neustart des Telefons war die Lösung für mich.
quelle
Wenn Ihre Entwicklungsumgebung Windows ist, stellen Sie sicher, dass die USB-Treiber korrekt installiert sind.
Eine Möglichkeit, um sicherzustellen, dass die USB-Treiber korrekt installiert sind, besteht darin, das PDANet Windows-Installationsprogramm zu erhalten und die USB-Treiber installieren zu lassen.
Die PDANet-Seite finden Sie hier.
quelle
Ich würde versuchen, eine eigene Verbindung mit ddms ohne Eclipse herzustellen. Möglicherweise führen Sie einen Emulator in Eclipse aus, den Sie nicht sehen, oder haben andere Probleme mit Eclipse.
Führen Sie einfach ddms an einer Eingabeaufforderung aus und prüfen Sie, ob das Gerät angezeigt wird und Sie eine Verbindung herstellen können.
Sie können auch sehen, ob beim Ausführen
adb devices
angezeigt wird, dass Ihr Telefon aufgelistet ist (und möglicherweise etwas anderes enthält).quelle
Ich habe das gleiche Problem, ich weiß, dass ich keine anderen Instanzen ausgeführt habe, und ich konnte es damit sehen
adb devices
. Ich habe gerade einen Neustart von Eclipse durchgeführt und es hat funktioniert.quelle
Der Neustart des PCs war das einzige, was für mich funktioniert hat. Es hat funktioniert, als ich dieses Problem mit einem Android 2.2-Telefon und einem Android 3.1-Tablet hatte.
quelle
Ich habe dieses Problem folgendermaßen gelöst:
Zum Ausführen Menü ====> klicken Sie auf Konfigurationen bearbeiten ====> Micellaneous und finaly deaktivieren Sie die Option Überspringen Installation wenn APK nicht geändert hat
quelle
Ich bin heute auf dieses Problem gestoßen. Nachdem ich den größten Teil des Tages damit verbracht hatte, das Problem zu beheben, funktionierte ich nur noch, um einen neuen Arbeitsbereich zu erstellen und mein Projekt darin zu importieren. Ich hoffe, das hilft jemandem, all die Schwierigkeiten zu vermeiden, die ich durchgemacht habe.
quelle
Ich stoße auch auf dieses Problem. In meiner Umgebung verwende ich einen Tomcat als Server und Android als Client. Ich fand, wenn Tomcat gestartet wird, dieser Fehler "Startfehler: Verbindung zur Remote-VM konnte nicht hergestellt werden. Zeitüberschreitung der Verbindung." wird passieren. Wenn Tomcat nicht ausgeführt wird, funktioniert adb gut.
quelle
Ich habe alle oben genannten Lösungen ausprobiert. Manchmal wird das Problem dadurch behoben, aber von Zeit zu Zeit blieb ich beim Meldungsfeld "Warten auf das Anhängen des Debuggers" hängen.
Die endgültige Lösung in meinem Fall bestand darin, alle Android-Geräte außer dem zu trennen, auf dem ich debuggen möchte. Ich weiß nicht, welcher der Schuldige ist: das Nexus 7 mit JB 4.2, das HTC One X mit ICS, das HTC Desire S mit Gingerbread oder die Kombination der 3, aber sobald ich nur ein Gerät angeschlossen habe läuft es glatt wie Seide.
quelle
Ich habe den Task-Manager verwendet, um adb.exe zu beenden und dieses Problem zu lösen. Adb.exe wird automatisch gestartet, nachdem es getötet wurde.
Das Töten von adb.exe hat für mich bisher viele Probleme im Zusammenhang mit Debug und Emulatoren gelöst.
quelle
Für Android Studio- Benutzer trat dieses Problem zum ersten Mal auf, als ich versuchte, ein Bare-Bone-Projekt auszuführen, nachdem ich meinen JDK-Speicherort aktualisiert hatte . Also bin ich über diesen Beitrag gestolpert. In meinem Fall hat einfaches Build-> Clean Project den Job gemacht.
quelle
Ich hatte auch das gleiche Problem bei der Verwendung von Android Studio und GenyMotion. Ich kann dieses Problem lösen, indem ich das Programm anhalte und es wieder aufnehme, nachdem die Meldung "Warten auf Debugger" angezeigt wird. Es kann auch bei Verwendung anderer IDEs und Emulatoren funktionieren.
quelle
Android Studio 1.2.2 unter Mac OS 10.10 Das gleiche Problem wie von anderen gemeldet. Ich habe Android Studio geschlossen und dann über die Befehlszeile im Terminal überprüft:
ps -efw | grep -i android
Dies meldete einen Java-Prozess (.gradle / Daemon), der mit Android Studio verbunden ist. Ich habe diesen Prozess abgebrochen, Android Studio neu gestartet und das Problem ist behoben.
quelle
Deaktivieren Sie die Entwickleroption in Ihrem Telefon.
Einstellungen> Entwickleroption> Deaktivieren
Dies funktionierte für mich, als ich versuchte, meine Anwendung zu verwenden, ohne sie zu debuggen.
quelle
Was das Problem für mich löste, war: "Ausführen" -> "Debugger an Android-Prozess anhängen" und dann Ihren Prozess auswählen.
Sie tun dies in Android Studio.
quelle
Ich hatte das gleiche Problem, das durch explizite Auswahl des gewünschten Geräts in der Debug-Konfiguration behoben wurde. Leider stoppt das Protokoll auch danach manchmal, wenn der Debugger versucht, eine Verbindung herzustellen. In diesem Fall finden Sie in DDMS-Perspektive den gewünschten Prozess. Es wird mit einem grünen Fehler hervorgehoben. Klicken Sie auf Stopp und debuggen Sie es erneut.
quelle
Dies mag alt sein, aber für das neueste Update 2.7.1 von Genymotion gehen Sie zu Entwickleroptionen . Wenn Sie nicht wissen, wie Sie diese Option öffnen können, gehen Sie zu Info-Telefon und klicken Sie einige Male auf Build-Nummer. Die Entwickleroptionen werden aktiviert. Aktivieren Sie die Entwickleroption und überprüfen Sie das USB-Debugging .
Getestet mit Genymotion 4.4 und höher. Seltsame Lösung wie? Funktioniert aber definitiv. Ich hoffe es hilft. Viel Spaß beim Codieren.
quelle
Im Debug-Modus stellt Android Studio über den Socket (: 8600) eine Verbindung zu Ihrem Gerät her. Irgendwie ist Ihre Socket-Verbindung verstopft und reagiert daher nicht auf eingehende Verbindungen.
Starten Sie Android Studio neu und Ihr Problem wird behoben
quelle
Ich habe viel darüber gelesen und die einzige Lösung, die für mich funktioniert hat, war, ein neues Projekt zu erstellen und dann das alte Projekt wieder hinein zu kopieren.
quelle