2015-06-10 13 views
23

Ho un dispositivo Android (con immagine Lollipop, se importante) in esecuzione su Genymotion 2.4 e connettersi tramite ADB (versione 1.0.32) da un altro PC di sviluppo con Eclipse in locale rete senza problemi di connettività. Tutto va bene tranne che per le cadute periodiche della connessione ADB (altri protocolli continuano a funzionare bene), cioè ADB perde il dispositivo e quando provo a riconnetterlo dice che il dispositivo è offline. Dalla mia esperienza, questo stato offline significa fondamentalmente che il destinatario (il dispositivo) pensa ancora che sia connesso e rifiuta la nuova connessione. L'unico metodo che conosco per ovviare a questo problema è riavviare il dispositivo e quindi ADB si connette ad esso come previsto.Il dispositivo virtuale in esecuzione su Genymotion passa periodicamente offline in ADB

Se qualcuno è interessato, ADB non è in esecuzione sul computer host remoto con Genymotion - altrimenti le connessioni di rimozione da altri PC sarebbero impossibili.

La domanda: come posso aggiornare "in modo soft" il dispositivo virtuale per accettare una nuova connessione ADB senza riavviare l'intero dispositivo?

P.S. Se lascio il dispositivo "offline" da solo per un po 'di tempo (un tempo abbastanza lungo, ad esempio, per un'ora), sembra che aggiorni il suo stato senza interazione esterna, quindi ADB è di nuovo in grado di connettersi correttamente e il dispositivo viene segnalato come "in linea". Ma non ha senso aspettare così tanto che ciò accada. Questa è solo una nuova informazione da considerare.

+0

sì problema con la mia genomotion anche. L'emulatore si disconnette frequentemente, specialmente quando il PC va in stop. Ho sempre bisogno di riavviare l'emulatore. Ci deve essere una soluzione migliore –

risposta

19

Questo potrebbe non funzionare per voi, ma ha funzionato per me nella situazione in cui il mio dispositivo passa semplicemente ADB offline. Uno dei commenti sulla tua domanda menziona che il loro emulatore generalmente va offline quando il suo dispositivo dorme. Il mio fa lo stesso e passa offline anche dopo lunghi periodi di inattività, nonostante non dorma effettivamente. Ad ogni modo, la mia correzione è semplice e chiara:

Nel terminale, vai dove hai installato l'SDK. Quindi, passare alla directory platform-tools all'interno del vostro SDK, ed emettere il seguente comando:

adb kill-server 

Dopo che termina, digitare questo:

adb devices 

che risolve quasi sempre il mio problema, ed io spero che risolva anche il tuo. Fammi sapere come funziona per te.

+1

Ha funzionato per me, anche se ho dovuto eseguire 'adb devices' due volte nella mia macchina. Grazie. –

+0

Perfetto. Grazie. Beats chiude il mio emulatore e riavvia la genomotion. – Simon

+0

mostra l'elenco dei dispositivi collegati vuoto su ubuntu – chetan

1

Se si utilizza MacOS Sierra - è presente un bug noto.

28.11.2016 Non c'è alcuna soluzione alternativa eccetto il riavvio di adb suggerito in @lustig answer.

  • Google risolverlo in Android Studio 2.3. Problemi da monitorare 82425, 216214
  • Non ci sono informazioni su Apple lo aggiusterà dalla loro parte o meno.
+0

No. I miei due PC erano in esecuzione Windows. Dalla tua risposta non è chiaro se è stato corretto in una versione specifica di ADB. Se sì, allora quale versione? La menzione di Android Studio non è sufficiente. – Stan

+0

@Stan ha aggiornato la mia risposta, tuttavia sembra che non sia correlato a Windows. Lasciandolo per gli utenti MacOS. – localhost