Come risolvere il messaggio "Waiting for Debugger"?


94

Ho HTC Comet connesso a Eclipse con SDK 2.2. Eseguo una build di debug - l'applicazione non viene eseguita; sebbene venga installato sul dispositivo. Sul dispositivo ottengo questa finestra di messaggio nella schermata Comet

In attesa
dell'applicazione del debugger HunyDew (processo com.airvine.hunydew) è in attesa del collegamento del debugger.
[Forza chiusura]

Mentre nella console Eclipse ottengo questi set di messaggi

[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.  

L'applicazione funziona correttamente nell'emulatore - aiuto per favore - cosa mi manca qui? Eventuali suggerimenti / suggerimenti? Grazie


2
Hai attivato l'opzione "Debug USB" nel tuo telefono? Impostazioni - Applicazioni - Sviluppo - Debug USB.
Jesus Oliva

Quell'opzione era impostata nel telefono.
Abhi

L'ho capito e ricordo che è andato via dopo pochi secondi e poi l'app sarebbe stata avviata. Lo capisci?
chaimp

15
Questo accade spesso se hai più di 1 istanza di Eclipse aperta ... l'unica soluzione che ho trovato è chiudere altre istanze; se qualcuno ha una soluzione migliore, aiutaci.
nikib3ro

Per me, la correzione descritta di seguito ha funzionato. martinahrer.at/2009/04/16/…

Risposte:


68

Alcuni dispositivi consentiranno al debugger di collegarsi solo se l'applicazione dispone dell'autorizzazione android.permission.SET_DEBUG_APP impostata nel file manifest:

<manifest>
  <uses-permission android:name="android.permission.SET_DEBUG_APP"></uses-permission>
</manifest> 

8
Questo mancava l'ho aggiunto - e il comportamento è rimasto lo stesso - non funziona
Abhi

Il tuo telefono è accessibile sulla porta 8601? Se in Eclipse vai nel menu Finestra -> Mostra vista -> Altro -> Android -> Dispositivi, quella vista mostra la tua app in ascolto su quella porta?
Iain

sì, il telefono sembra essere accessibile sulla porta 8601 - Se faccio una cattura dello schermo (del dispositivo) da Eclipse - funziona.
Abhi

23
Stavo riscontrando lo stesso problema, tranne per il fatto che stavo riscontrando con l'emulatore Android. Ho capito che se metti il ​​tuo computer in stop mentre Eclipse o l'emulatore sono in esecuzione, ciò rovina la connessione tra di loro. Il mio problema è scomparso dopo aver riavviato sia l'emulatore che Eclipse.
Vivek

1
Grande aiuto, in realtà ho seguito l'aiuto di Viveks. Non avevo mai aggiunto quella riga al manifest, ma avevo effettivamente lasciato che la mia macchina andasse a dormire. Dopo aver riavviato sia l'emulatore che Eclipse ero di nuovo attivo e funzionante. grazie
cablato

51

La finestra di dialogo Waiting for Debugger viene mostrata se stai costruendo un'applicazione di debug o da qualche parte nel tuo codice sorgente, hai chiamato Debug.waitingForDebugger ();

All'interno di Android Studio 2.0 e versioni successive, è disponibile un'opzione di Allega debugger al processo Android. È l'ultima voce di menu nel menu Esegui.

Schermata delle opzioni del menu Esegui in Android Studio


Grazie - questo era esattamente il mio problema - Android N - Google Pixel - IntelliJ
bsautner

2
Prima di oggi non dovevo farlo, ma ora devo farlo. Devo aver cambiato un'impostazione accidentalmente. Ma quale?
Eurig Jones

Grazie, questo è aiuto
truthadjustr

19

Non sono sicuro che sia quello che stai cercando, ma prova a mettere:

android:debuggable="true"

nel tag dell'applicazione in AndroidManifest.xml


Grazie - sì, ce l'ho -
Abhi

13
Ciò non ha nulla a che fare con il suo problema, Eclipse abilita automaticamente il debug quando si avvia in modalità debug. NON vuoi aggiungerlo al tuo manifest a meno che tu non voglia specificamente che le tue build di rilascio producano informazioni di debug.
Justin Buser

Ho rimosso questa riga: android: debuggable = "false" e ora funziona perfettamente.
dbv

10

Ho questo problema da molto tempo che non riesco a connettere il mio emulatore o dispositivo Android al debugger mentre sia la console che l'emulatore erano in attesa di connessione al debugger .

E la configurazione per il debug all'interno di eclipse mi ha anche confuso molto prima, ma oggi ho risolto questo problema, con i seguenti passaggi:

Quando vuoi eseguire il debug di un progetto Android, ad esempio, mypro . fai clic con il pulsante destro del mouse su di esso nel file "Package Explorer". Then choose "Debug as"-->"Android Application".

Quindi l'emulatore potrebbe fermarsi su "In attesa di connessione al debugger" (o qualcos'altro simile a questo).

Quindi è necessario connettersi al debugger facendo clic su "DDMS" per aprire la prospettiva DDMS e fare clic sulla scheda "Dispositivi" .

Quindi puoi vedere un elenco di processi in esecuzione sul tuo emulatore o dispositivo.

Fare doppio clic su quello su cui si sta eseguendo il debug, quindi passare alla prospettiva Debug, è possibile vedere che il debugger è connesso e si potrebbe eseguire il debug del programma. È così che ho risolto questo problema.

A proposito, il mio sistema operativo è Win7 a 32 bit. La versione di Eclipse è Helios Service Release 2. Android SDK è rev. 16 e platform-tools '10.

Aggiornare.

Ho scoperto che è il problema della mia configurazione TCP / IP. Il debugger non può essere connesso quando assegno un indirizzo IP statico (per l'accesso a Internet).

Quindi ogni volta che il debugger non è in grado di connettersi, eseguo sempre i seguenti passaggi:

1.chiude la finestra di eclissi corrente.

2.modificare la configurazione dell'indirizzo IP in dinamico , significa ottenere un indirizzo IP da DHCP .

3.Aprire di nuovo l'eclissi.

quindi il debugger può essere connesso. Ho pensato che potesse essere un problema del meccanismo interno del debugger java che utilizza la connessione socket.


4
"2.modificare la configurazione dell'indirizzo IP in dinamico, significa ottenere un indirizzo IP tramite DHCP." Come fai a fare questo? Chiarire per favore!
Ksice

@Ksice Ciao, significa "Recupera dinamicamente un indirizzo IP". In realtà, il meccanismo interno del debugger Android si basa sul protocollo TCP / IP, quindi quando si utilizza un indirizzo IP statico, sembra che il sistema non possa connettere il dispositivo terminale o l'emulatore con il debugger
Stevens

10

Ottengo questo se cambio il cavo USB su una porta diversa sul mio PC, strano ma funziona quando lo cambio di nuovo. Inoltre penso di averlo ottenuto quando c'è stato un altro dispositivo o emulatore in esecuzione allo stesso tempo o due istanze di Eclipse aperte.


Lo stesso per me, non sembrava che avessi due istanze di Eclipse aperte, ma la scheda Processi del Task Manager di Windows le mostrava.
Andrew Martin

Sì, hai ragione, ho avuto due istanze di eclipse in esecuzione. Dopo aver chiuso la seconda istanza di eclipse, il problema è stato risolto.
Signcodeindie

Se hai provato IntelliJ IDEA per lo sviluppo Android, questo può accadere anche se Eclipse e IntelliJ sono aperti contemporaneamente.
SilithCrowe

Sono riuscito a entrare in questa situazione avendo due istanze di IntelliJ IDEA che eseguono il debug di due app contemporaneamente. Dopo di che una delle app non si avviava più, continuava a dire "Waiting for debugger". Infine risolto scollegando il cavo USB e spegnendo e riaccendendo il dispositivo.
RenniePet

4

Per coloro che ottengono questo fastidioso comportamento in 4.2.2, è necessario deselezionare l'impostazione "attendi debugger" nelle opzioni dello sviluppatore. Ovviamente, quelle opzioni sono state nascoste da Google e devi fare un trucco subdolo per farle apparire di nuovo. Li avevo impostati prima che scomparissero, e per la vita non potevo ritrovarli.

Questa pagina spiega la procedura


possiamo ripristinare quelle opzioni, immagino di averlo capito. ma grazie, questo ha aiutato.
stack_ved

3

Eseguendo Android Studio, mi sono imbattuto in questo problema e dopo aver provato vari rimedi, il riavvio di Android Studio è quello che sembrava risolvere il problema.


3

La mia soluzione è usare il Dalvik Debug Monitor. A volte è presente un bug rosso o verde accanto a un processo. Fai clic sul dispositivo su cui stai tentando di caricare. Seleziona la scheda Azioni e reimposta adb. Questo di solito collega il debugger per me. Trovo che eseguire il debug tramite questo monitor funzioni meglio per me rispetto all'utilizzo del plug-in Logcat per Android Eclipse.


Posso confermare che il ripristino dell'ADB (tramite la scheda Azioni) come hai descritto ha risolto questo problema per me. Questo è il debug con un emulatore che esegue 4.0.
ubzack

1
Puoi spiegare cosa intendi con quanto segue: "La mia soluzione è utilizzare Dalvik Debug Monitor. A volte è presente un bug rosso o verde accanto a un processo. Fai clic sul dispositivo su cui stai tentando di caricare. Seleziona la scheda Azioni e reimposta adb. " Quali sono i passaggi per farlo?
Regis_AG

2

Chiusura dell'emulatore e chiusura di eclipse. Riaprire Eclipse e avviare il simulatore ha funzionato per me.

La cosa fondamentale da cercare è nel pannello Dispositivi di Eclipse. Se avvii l'emulatore o il dispositivo e viene visualizzato nell'elenco dei nomi del dispositivo ma viene visualizzato [null] e sotto di esso non viene visualizzato alcun processo in esecuzione, allora non funzionerà correttamente caricando l'app al suo interno.

Se il nome del dispositivo viene visualizzato ed è Online, le cose sembrano funzionare senza problemi.

Non so perché non funziona tutto il tempo però.


2

Nel mio caso, il problema è causato da adb connesso a un altro dispositivo.

Se più dispositivi sono collegati al PC, rimuovere altri dispositivi tranne quello richiesto.


2

Finisco per entrare nella prospettiva "Debug".

Quindi nel frame "Debug", ci sono l'elenco di debug o l'elenco in esecuzione.

Devi decidere quale è il tuo attuale che ha questo problema (in attesa di debug ...)

Quindi fare clic con il pulsante destro del mouse e scegliere "Termina e rimuovi".

Quindi provi di nuovo a correre. E quella casella di avvertimento sparirà.



1

Se l'ambiente di sviluppo è Windows, assicurati che i driver USB siano installati correttamente.

Un modo per assicurarsi che i driver USB siano installati correttamente è ottenere il programma di installazione di PDANet per Windows e lasciare che installi i driver USB.

Puoi trovare la pagina PDANet qui.


Potrei farlo funzionare senza dover scaricare PDANet. Ho appena rifatto tutto, inclusa la disinstallazione dell'applicazione precedente, utilizzando la disinstallazione di adb (in precedenza stavo utilizzando l'applet delle impostazioni per disinstallare l'applicazione). Grazie comunque per aver postato su PDANet. Finora il suggerimento di Lain era l'unico che mi mancava, ma la sua risposta è stata prima che la taglia fosse offerta. Anche a me piace la tua risposta - spero che qualcun altro voti la tua risposta - se ciò accade allora tu e Lain potete condividere la taglia - il sistema non mi permette di dividere la taglia.
Abhi

Ciò non ha nulla a che fare con il suo problema, i driver sono chiaramente già installati poiché l'output della console mostra ADB che interroga il dispositivo e trova l'applicazione già installata e avviata.
Justin Buser

1

Proverei a connettermi al telefono con ddms da solo senza Eclipse. Potresti eseguire un emulatore all'interno di eclipse che non vedi o avere altri problemi con Eclipse.

Basta eseguire ddms da un prompt dei comandi e vedere se il dispositivo viene visualizzato e puoi connetterti ad esso.

Puoi anche vedere se appare quando corri adb devicese vedi che il tuo telefono è elencato (e potrebbe esserci qualcos'altro ..)


1

Ho avuto lo stesso problema, so che non stavo eseguendo altre istanze e ho potuto vederlo con adb devices. Ho appena riavviato Eclipse e ha funzionato.


1

Il riavvio del PC è stata l'unica cosa che ha funzionato per me. Ha funzionato quando ho avuto questo problema con un telefono Android 2.2 e anche un tablet Android 3.1.


Ha funzionato per me: potrebbe essere una coincidenza, ma c'era un aggiornamento di Windows in attesa.
OldCurmudgeon

1

Ho risolto questo problema in questo modo:

Vai al menu Esegui ====> fai clic su Modifica configurazioni ====> Micellanea e infine deseleziona l'opzione Salta installazione se l'APK non è cambiato

inserisci qui la descrizione dell'immagine

inserisci qui la descrizione dell'immagine


0

Oggi mi sono imbattuto in questo problema. Dopo aver trascorso la maggior parte della giornata cercando di risolverlo, l'unica cosa che ha finito per funzionare è stata creare un nuovo spazio di lavoro e importare il mio progetto al suo interno. Spero che questo aiuti qualcuno a evitare tutti i guai che ho passato.


0

Incontro anche questo problema. Nel mio ambiente, utilizzo un Tomcat come server e Android come client. Ho trovato, se Tomcat è avviato, questo errore "Errore di avvio: impossibile connettersi alla VM remota. Connessione scaduta." si verificherà. Se tomcat non viene eseguito, adb funziona bene.


0

Ho provato tutte le soluzioni di cui sopra, a volte risolve il problema, ma di tanto in tanto mi è capitato di rimanere bloccato con la finestra di messaggio "In attesa che il debugger si alleghi".

La soluzione finale nel mio caso è stata quella di scollegare tutti i dispositivi Android tranne quello su cui voglio eseguire il debug. Non so quale sia il colpevole: il Nexus 7 con JB 4.2, l'HTC One X con ICS, l'HTC Desire S con Gingerbread o la combinazione del 3, ma non appena ho un solo dispositivo collegato , scorre liscio come la seta.


0

Ho usato Task Manager per uccidere adb.exe per risolvere questo problema. Adb.exe verrà avviato automaticamente dopo essere stato ucciso.

L'uccisione di adb.exe ha risolto molti problemi relativi al debug e agli emulatori per me finora.


0

Per gli utenti di Android Studio ho riscontrato questo problema la prima volta durante il tentativo di eseguire un progetto bare bone subito dopo aver aggiornato la mia posizione jdk . Quindi mi sono imbattuto in questo post. Nel mio caso semplice Build-> Clean Project ha fatto il lavoro.


0

Avevo lo stesso problema anche quando utilizzavo Android Studio e GenyMotion. Sono in grado di risolvere questo problema sospendendo il programma e riprendendolo di nuovo dopo la visualizzazione del messaggio "Waiting for debugger". Potrebbe funzionare anche durante l'utilizzo di altri IDE ed emulatori.inserisci qui la descrizione dell'immagine


0

Android Studio 1.2.2 su Mac OS 10.10 Stesso problema segnalato da altri. Ho chiuso Android Studio, quindi ho controllato dalla riga di comando nel terminale:

ps -efw | grep -i android

Questo ha segnalato un processo java (.gradle / daemon) associato ad Android Studio. Ho interrotto questo processo, riavviato Android Studio e il problema è scomparso.


0

disabilita l'opzione sviluppatore nel telefono.

Impostazioni> Opzioni sviluppatore> Disabilita

Questo ha funzionato per me, quando ho provato a utilizzare la mia applicazione senza eseguirne il debug.


0

Ciò che ha risolto il problema per me era: "Esegui" -> "Collega il debugger al processo Android" e quindi seleziona il tuo processo.

Puoi farlo in Android Studio.


0

Ho avuto lo stesso problema, risolto selezionando esplicitamente il dispositivo desiderato nella configurazione di debug. Sfortunatamente, anche dopo quel registro a volte si interrompe quando il debugger tenta di connettersi. In questo caso nella prospettiva DDMS trova il processo desiderato. Sarà evidenziato con un bug verde. Fare clic su stop e quindi eseguire nuovamente il debug.


0

Questo potrebbe essere vecchio, ma per l'ultimo aggiornamento 2.7.1 di Genüsseldorf, vai su Opzioni sviluppatore , se nel caso non sai come aprire quell'opzione, vai su Informazioni sul telefono e fai clic su Numero build alcune volte e le opzioni Sviluppatore saranno abilitate. Attiva l' opzione sviluppatore, controlla il debug USB .

Testato su Genmony 4.4 e versioni successive. Strana soluzione eh? Ma sicuramente funziona. Spero che sia d'aiuto. Codifiche felici.


0

In modalità di debug, Android Studio si connette al dispositivo tramite presa (: 8600). In qualche modo la tua connessione socket è bloccata e quindi non risponde alle connessioni in entrata.

Riavvia Android Studio e il tuo problema sarà risolto


-1

Ho letto molto su questo e l'unica soluzione che ha funzionato per me è stata quella di creare un nuovo progetto e quindi copiare il vecchio progetto al suo interno.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.