Error de Eclipse “El servidor ADB no ACK, no pudo iniciar daemon”

Después de actualizar el SDK, Eclipse muestra este error:

El servidor ADB no ACK, no pudo iniciar el daemon.

Cuando ejecuto una aplicación de Android, me da lo siguiente:

Asegúrese de que adb esté ubicado correctamente en ‘D: \ android-sdk-windows \ platform-tools \ adb.exe’ y se puede ejecutar.

¿Como puedo solucionar este problema?

Gracias, @jowett , he resuelto el mismo problema, siguiendo estos pasos

Paso 1: CTRL + Shift + Esc para abrir el administrador de tareas, que tiene el proceso adb.exe y finaliza (mata) ese proceso

Paso 2: Ahora, cierre el eclipse, que se está ejecutando actualmente en mi computadora.

Paso 3: Nuevamente, reiniciar eclipse luego resuelve ese problema.


Para aquellos que usan OS X

killall adb 

Para aquellos que usan Windows

 adb kill-server 

debería hacer el truco.

Encontré el mismo problema, aunque no hice qué causó esto. Lo que sea, encuentro algunas pistas y arreglado finalmente.

Cuando abro el administrador de SDK y AVD, pero encuentro que la versión de AVD (2.3.3) no es igual con la versión de lib de Android (2.3). Entonces creo un nuevo AVD con 2.3.

Lo solucioné siguiendo estos pasos: 1. Abra el administrador de tareas de Windows y elimine el proceso de adb.exe. 2. Cerrar eclipse y reiniciarlo. Entonces funciona

Espero eso ayude.

Estos síntomas ocurren si está usando el emulador Genymotion (en Windows o Linux) al mismo tiempo que Android Studio:

 adb server is out of date. killing... ADB server didn't ACK * failed to start daemon * 

Genymotion incluye su propia copia de adb , que interfiere con la que se incluye en el SDK de Android.

La forma más fácil de arreglar parece ser actualizar su configuración de Genymotion para que use el mismo ADB que su SDK de Android:

configuración genymotion ADB

Simplemente marque la opción “Usar herramientas personalizadas de Android SDK” e ingrese su ubicación deseada.

El ADB a menudo fallará si hay una nueva línea en adb_usb.ini . Quítelo, reinícielo, y eso a menudo resolverá el problema (al menos para mí de todos modos).

Símbolo del sistema (cmd.exe):

 netstat -aon | findstr 5037 

Encuentre la identificación del proceso de 0.0.0.0:

Ingrese la descripción de la imagen aquí

Asegúrese de que sea adb.exe:

 tasklist | findstr 1980 

Ingrese la descripción de la imagen aquí

Mata a este proceso:

 taskkill /f /t /im adb.exe 

Ingrese la descripción de la imagen aquí

Haz que ADB vuelva a la normalidad:

Ingrese la descripción de la imagen aquí

Crédito: publicación de blog * Servidor ADB de Android no ACK no pudo iniciar daemon *

Si está utilizando una aplicación de sincronización para el dispositivo, también podría ser porque hay otras aplicaciones que usan el mismo puerto 5037 . Cierre todos los servicios que se ejecutan en el puerto 5037 e intente iniciar ADB.

Para verificar si alguna aplicación está usando el puerto 5037, usa esto:

 netstat -a -n -o |findstr "5037" 

Obtenga el PID de la aplicación.

Use Process Explorer para encontrar el Proceso y salir de él.

Ahora use adb start-server o adb get-state para iniciar / verificar el estado del servidor ADB.

Me enfrenté al problema cuando usé la aplicación Snappea / Wandoujia Sync.

Causé este problema al ingresar una línea en blanco adicional al final de ~ / .android / adb_usb.ini

(Eliminar la línea en blanco adicional solucionó el problema)

Podemos resolver este problema tan fácilmente.

  1. Abra un símbolo del sistema y haga cd
  2. Ejecutar el comando adb kill-server
  3. Abra el Administrador de tareas de Windows y compruebe si adb aún se está ejecutando. Si es así, simplemente adb.exe
  4. Ejecute el comando adb start-server en el símbolo del sistema

Ingrese la descripción de la imagen aquí

He resuelto mi primera pregunta: abra Eclipse, abra el Administrador de SDK y elija el dispositivo para abrir.

O puede abrir el directorio SDK. Abra el Administrador de SDK, y luego elija el dispositivo para abrir

2: Cierre Eclipse, y luego ábralo.

Asegúrese de que la depuración de USB en su teléfono esté encendida. ADB kill-server y ADB start-server no son el problema.

 C:\Documents and Settings\Administrator> adb nodaemon server - cannot bind 'tcp:5037' C:\Documents and Settings\Administrator> netstat -aon | findstr "5037" - TCP 127.0.0.1:1130 127.0.0.1:5037 TIME_WAIT 0 - TCP 127.0.0.1:1269 127.0.0.1:5037 TIME_WAIT 0 - TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 3088 - TCP 127.0.0.1:5037 127.0.0.1:1128 TIME_WAIT 0 - TCP 127.0.0.1:5037 127.0.0.1:1129 TIME_WAIT 0 - TCP 127.0.0.1:5037 127.0.0.1:1270 TIME_WAIT 0 C:\Documents and Settings\Administrator>tasklist -fi "pid eq 3088" - Image name PID session name session # memory usage 

============================================ === ===== ============

  - adb.exe 3088 Console 0 3,816 K C:\Documents and Settings\Administrator>taskkill /f /pid 3088 - Success: terminate the PID for the process of 3,088. C:\Documents and Settings\Administrator>adb start-server - daemon not running. starting it now on port 5037 * - daemon started successfully * 

Ya he votado otra respuesta aquí a esta pregunta, pero por si acaso alguien se pregunta, no es necesario reiniciar Eclipse para que ADB vuelva a funcionar. Simplemente abra un shell y ejecute el comando:

 adb start-server 

Si no ha establecido la ruta a ADB en las propiedades de su sistema, primero debe ir al directorio en el que existe ADB (en Android \ android-sdk \ platform-tools … Estoy ejecutando Windows, no lo hago). t saber cómo la gente mac hace cosas).

Dirígete a sysinternals.com y selecciona TCPVIEW y PROCESS EXPLORER, si aún no los tienes instalados.

Por algún motivo, el daemon ADB finaliza antes de que se complete el intercambio de socket cerrado. Si ejecuta (desde el símbolo del sistema) “NETSTAT -o”, verá el socket (generalmente 5037) en estado CLOSE_WAIT y el número del proceso de propiedad. Process Explorer no mostrará esa ID de proceso (el daemon terminado), y el proceso llamado adb.exe (que abrió el socket) habrá desaparecido. (Si se encuentra adb.exe, intente eliminar la tarea y vea si las cosas se limpian).

Usando TCPVIEW, localice el socket colgado. La columna del nombre del proceso mostrará que no se puede encontrar el proceso asociado. Haga clic derecho y seleccione “Cerrar conexión”. El socket está ahora cerrado y el adb daemon debería poder iniciarse.

Tuve un problema similar. Eliminar una instancia existente del proceso de ADB desde el Administrador de tareas no funcionó para mí.

Hace solo unos días, intenté instalar MIPS SDK y ADT-17 antes y Eclipse me dio el error, y no solucioné ese problema.

Entonces, ahora, cuando obtuve este servidor ADB no ACK, no pude iniciar daemon … problema, ejecuté ‘Buscar actualizaciones’ en el elemento de menú Ayuda de Eclipse. No hubo actualizaciones disponibles, pero al menos el error ‘servidor ADB no ACK’ desapareció.

Espero que esto pueda ayudar en algunos casos.

Escriba ./adb nodaemon server en una terminal.

Si devuelve Invalid content in adb_usb.ini , entonces hay un problema con su archivo adb_usb.ini en la carpeta .android .

Abra adb_usb.ini y borre sus contenidos. Luego reinicie el servidor … funcionó para mí.

Compruebe la ruta del directorio de Android. No debe contener espacios, etc.

También verifique si el complemento se ha configurado correctamente en Eclipse → Preferencias .

En mi caso, tuve todo comprobado varias veces, pero todavía no funcionaba. Estaba a punto de reinstalar todo, pero encontré una respuesta en este sitio (alguna otra publicación).

Revisa tu antivirus. Puede estar bloqueando los puertos de los progtwigs adb.exe o emulator, etc. Eso resolvió el problema en mi caso.

Además de la solución de @Bastet :

En realidad, tenemos que matar el proceso usando la dirección 0.0.0.0:0 . Es por eso que la mayoría de las personas que mataron a adb.exe del Administrador de tareas estaba trabajando (en mi caso, no pude verlo incluso en el Administrador de tareas).

Siguiendo los pasos de @Bastet , descubrí que algún otro proceso estaba usando esta dirección. Me adelanté para matarlo, y me dio ACCESS DENIED como Error .

Entonces usando la tasklist | findstr **** tasklist | findstr **** Descubrí el nombre del proceso y lo tasklist | findstr **** del Administrador de tareas.

A partir de entonces comenzó a funcionar.

En mi caso, bas_daemon y bas_helper usaban esta dirección, que corresponde a MOBOROBO .

Yo tuve el mismo problema. Pero no hubo ningún proceso de adb en mi computadora portátil. Acabo de cerrar la sesión e iniciar sesión en mi cuenta, y está resuelto …

ADB podría comenzar desde las ventanas de CMD después de eso.

La mejor y la forma más eficiente sin reiniciar ningún dispositivo o software es:

Ejecute lo siguiente:

 adt-bundle-windows-x86_64\sdk\platform-tools\adb.exe 

Y una cosa más … ADB es una cosa autodependiente. No puedes hacer nada hasta que no quiera funcionar. Hay una forma más que descubrí: deje el dispositivo conectado durante 5-6 minutos y espere. Pronto el dispositivo se conecta e intenta iniciarse.

Esto no comenzó a sucederme hasta que rooteé mi teléfono Samsung Galaxy S III (siguiendo la guía del foro xda-developer).

Sucede bastante al azar, pero definitivamente ocurre mientras se ejecuta Eclipse.

Eliminar el proceso adb.exe y reiniciarlo resuelve el problema.

Mira el antivirus o el firewall … ¿Alguno de estos te impide el acceso … En el antivirus k7 apagué el monitor del sistema, y ​​funciona para mí …

Tuve que permitir que adb.exe accediera a mi red en mi firewall.

Matar a Eclipse y luego reiniciar no me ayudó. Agregué la herramienta Android a las variables PATH, inicié el Administrador de tareas y eliminé adb.exe.

Reinicié Eclipse, y luego funcionó.