Pregunta Android emulator-5554 sin conexión


Tengo un problema con emulator-5554, me sigue diciendo que no está en línea.

Cuando hago un adb devices desde la línea de comando dice

emulator-5554 offline

Incluso después de un nuevo reinicio, pruebo ese comando y todavía dice que está fuera de línea.

El problema es cuando intento instalar archivos .apk en el emulador usando abd install <path> desde el símbolo del sistema, me dice que está fuera de línea, si creo otro dispositivo y lo ejecuto, entonces intento instalar los archivos .apk, dice que tengo demasiados dispositivos conectados. Entonces, en otras palabras, no puedo instalar mis archivos .apk.

¿Cómo demonios puedo deshacerme de ese maldito emulador-5554? Escuché que si reinicias, debería borrar todos los dispositivos, pero parece que no funciona. Es como si se estuviera inicializando cuando mi computadora se inicia. ¿Alguien ha tenido este problema?

Gracias


76
2018-06-30 19:25


origen


Respuestas:


En tal caso, puede hacer todo lo siguiente para asegurarse de que su emulador comience a funcionar nuevamente:

  1. Ve a cmd y escribe "adb kill-server"
  2. Vaya al administrador de tareas y busque "adb" en los procesos. Si encuentra uno, haga clic derecho sobre él y haga clic en el árbol de proceso final.
  3. En eclipse, vaya a Ventana> Administrador de dispositivo virtual Android, haga clic en el AVD que desea iniciar, haga clic en Inicio y desmarque "Lanzar desde instantánea" y luego haga clic en iniciar.

¡Eso es! Llevará un tiempo y debería resolver su problema.


30
2018-01-24 10:27



1. Simplemente "Eliminar datos" para solucionar este problema.

enter image description here

2. Si no funciona, ve al dispositivo emulado y habilita las opciones del desarrollador> habilita la depuración de usb


32
2018-03-18 15:57



La forma en que Android detecta los emuladores es escaneando puertos a partir del puerto 5555.

El número que ves en el adb devices list (en su caso 5554) será uno menos que el puerto que adb encuentra abierto.

Es probable que tenga un proceso en ejecución que esté escuchando en el puerto 5555. Para deshacerse del dispositivo "fuera de línea", necesitará encontrar esa aplicación y cerrarla o volver a configurarla para escuchar un puerto diferente.


17
2018-04-27 19:18



Esta solución es para Windows.

(Ver La solución de @Chris Knight para Mac / Linux)

  1. Inicie Windows Powershell:

    Inicio -> escriba 'powershell' -> Presione ENTER

  2. Ejecute el siguiente comando: dispositivos adb


PS C:\Users\CJBS>adb devices
List of devices attached
emulator-5656   host
emulator-5652   host
12b80FF443      device

En este caso, 12b80FF443 es mi dispositivo físico, y las entradas emulator- * son basura.

  1. Por @ Brigham, "La forma en que Android detecta emuladores es por escaneando puertos comenzando en el puerto 5555. ". El número de puerto se indica después del nombre del emulador (en este caso 5656 y 5652). El número de puerto a verificar es el número de puerto del emulador más 1. Entonces, en este caso: -

    5656 + 1 = 5657

    5652 + 1 = 5653

    Entonces, veamos qué programa está usando estos puertos. En este caso, los puertos para verificar ambos comienzan con "565". Así que buscaré puertos en uso comenzando con 565. Ejecutar: netstat -a -n -o | Select-String ":565"


PS C:\Users\CJBS> netstat -a -n -o |  Select-String ":565"

  TCP    127.0.0.1:5653         127.0.0.1:5653         ESTABLISHED     5944
  TCP    127.0.0.1:5657         127.0.0.1:5657         ESTABLISHED     5944
  1. El campo final en esta salida es el PID (ID del proceso); en este caso es el PID 5944 para ambos de estos dos puertos. Entonces, veamos qué es este ID de proceso. Ejecutar: tasklist /v | Select-String 5944. Reemplace 5944 con la salida del comando anterior:

PS C:\Users\CJBS> tasklist /v | Select-String 5944

adb.exe                       5944 Console                    1      6,800 K Running         MyPCName\CJBS          0:06:03 ADB Power Notification Window

Qué sorpresa. Es ADB. Como se señala en otras respuestas, también podrían ser otros programas.

  1. Ahora, acaba con este ID de proceso. Ejecutar kill 5944, reemplazando 5944 con el PID en el comando anterior.

PS C:\Users\CJBS> kill 5944
  1. Para confirmar que el emulador espurio se ha ido, vuelva a ejecutar el siguiente comando: dispositivos adb

PS C:\Users\CJBS>adb devices
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
12b80FF443      device

El ADB se reinicia (como se había eliminado anteriormente) y no detecta más emuladores falsos.


14
2017-11-19 17:05



En mi caso, encontré algún proceso que hace que adb no funcione bien.
Puedes intentar eliminar algún proceso extraño y ejecutar "dispositivos adb" para probar.

Funcionó para mí:
matar el nombre del proceso MONyog.exe


6
2018-01-06 10:24



Lo resolví abriendo mi orden de mando:

adb kill-server

dispositivos adb

Después de arrancar, ADB ahora detecta el dispositivo / emulador.


6
2017-11-07 09:02



Si está en Linux o Mac, y suponiendo que el dispositivo fuera de línea es 'emulator-5554', puede ejecutar lo siguiente:

netstat -tulpn|grep 5554

Que produce el siguiente resultado:

tcp        0      0 127.0.0.1:5554          0.0.0.0:*               LISTEN      4848/emulator64-x86
tcp        0      0 127.0.0.1:5555          0.0.0.0:*               LISTEN      4848/emulator64-x86

Esto me dice que el identificador de proceso 4848 (el tuyo probablemente será diferente) sigue escuchando en el puerto 5554. Ahora puedes eliminar ese proceso con:

sudo kill -9 4848

¡y el dispositivo fantasma fuera de línea ya no existe!


4
2017-10-17 10:49