Ya no puedo conectarme a mi dispositivo usando ADB a través de la línea de comando o en Eclipse .
Ejecutando el comando
adb devices
devuelve el nombre del dispositivo, pero dice que está fuera de línea.
Cosas que he intentado.
- Modo de depuración de Android activado
- Reinstaló el controlador USB de Google
- Restaurado el sistema operativo a una copia de seguridad que funcionaba anteriormente ( CyanogenMod )
- Intercambió el cable USB
- Reinició el teléfono / computadora varias veces
- Actualizado el SDK de Android
Realmente no tengo idea de lo que está pasando. Cualquier otra cosa que creas que puedo probar, soy todo oídos.
Para ser claros, si tiene este mismo problema, el problema probablemente sea un SDK desactualizado. A partir de 4.2.2 hay una función de seguridad que requiere que confirme la huella digital RSA del dispositivo conectado. ¡Abre el administrador de SDK y actualiza las herramientas! Luego reiniciar.
android
adb
android-2.2-froyo
Brian
fuente
fuente
Respuestas:
Acabo de tener el mismo problema hoy después de que mi Nexus 7 y Galaxy Nexus se actualizaron a Android 4.2.2.
Lo que me solucionó fue actualizar las herramientas de la plataforma SDK a r16.0.1. Para mí, esta versión no se mostraba en mi SDK Manager, por lo que la bajé de http://dl.google.com/android/repository/platform-tools_r16.0.1-windows.zip directamente.
Luego debe cambiar el nombre del
platform-tools
directorio y descomprimirloandroid-sdk-windows/platform-tools
. Usando el SDK Manager, también había actualizado a las últimas herramientas sdk antes de esto.Si todo su Eclipse y ADT son antiguos, es posible que deba actualizarlos también, pero no fue necesario.
Nota: es posible que deba ejecutar SDK Manager dos veces (una vez para actualizarse) antes de ver los últimos paquetes.
fuente
Intenta correr
adb devices
después de correradb kill-server
. La pregunta de seguridad aparece después de eso. Trabajó para mi.fuente
adb kill-server
comando en mi host antes de conectar en mi invitado a travésadb connect 192.x.x.x
.También parece ocurrir con frecuencia cuando se conecta al dispositivo usando el modo Wi-Fi (en Android Studio o en la consola ejecutando,
adb tcpip 5555
por ejemplo).Arreglar:
adb kill-server
para asegurarse de que adb no se esté ejecutando.adb devices
. Esto debería iniciar el demonio ADB. Su dispositivo ahora debería estar en línea nuevamente.fuente
adb kill-server
sin reiniciar el dispositivo Android y no funcionó. Cuando repito estos pasos y reinicio el dispositivo como se menciona en la sección 4, funcionó.Llegué al mismo problema en un Nexus 7 que ejecuta la actualización 4.2.2 OTA. Estoy casi seguro de que tuve una conexión ADB a través de USB y Wi-Fi después de la actualización hasta que dejó de funcionar. Para solucionarlo, actualicé mi SDK usando:
Ahora mis herramientas de desarrollo son:
fuente
No puedo enfatizar que cambiar los puertos USB es clave. A menudo, los puertos USB del panel frontal pueden estar defectuosos.
fuente
Para cualquiera que se pregunte sobre 4.2.2, hay una pregunta de seguridad que aparece en el teléfono solicitando la verificación RSA con la PC. Asegúrese de que sus herramientas estén actualizadas Y permita el acceso a la PC al verificar la pregunta de seguridad en los dispositivos en cuestión. Esto me lo arregló.
Y como siempre, verifique que tenga habilitada la depuración en las opciones del desarrollador;)
fuente
Múltiples archivos adb.exe?
Mi problema se resolvió cuando eliminé una copia de OLD adb.exe de C: / Windows / . No sé cómo llegó una copia de adb.exe a C: \ Windows \?
Cuando inicio adb.exe desde android-sdk / platform-tools / no tuve ningún problema con la detección.
fuente
c:\windows\adb.exe
a algo más (adb.old.exe
) solucionó el problema. Ni siquiera necesité reiniciar o abrir / cerrar la línea de comando. Simplemente funciona Escribíadb devices
justo después de cambiar el nombre del viejoadb.exe
y luego mi Nexus 7 me preguntó si quería autorizar esta computadora. Dije que sí y ahora, cuando emito enadb devices
lugar de "sin conexión", dice "dispositivo".Pruebe apagando la depuración usb una vez y luego habilitándolo nuevamente y luego conecte su dispositivo con el sistema: enlace
fuente
Estaba teniendo este problema y ninguna de las otras respuestas me ayudó. Lo que era necesario, después de actualizar el SDK e instalar la API para 4.2.2, se estaba ejecutando:
Otro problema que tenía era que estaba tratando de conectar ADB a través de Wi-Fi, que es mi única opción porque los puertos USB de mi Mac son realmente complicados. Desafortunadamente, ADB a través de Wi-Fi no muestra la pregunta de seguridad en 4.2.2, por lo que debe encontrar un cable USB que funcione y conectarse a través de USB al menos una vez para aceptar la pregunta de seguridad, pero después de hacerlo una vez , puedes conectarte a través de Wi-Fi.
fuente
Si su dispositivo normalmente se conecta a través de USB, pero de repente deja de funcionar, especialmente después de que el cable USB se haya desconectado y vuelto a conectar, intente los siguientes pasos no invasivos antes de hacer algunas de las cosas más drásticas mencionadas en las otras respuestas:
Si su dispositivo aparece en la lista con 'dispositivo' al lado, está de vuelta en el negocio.
Si su dispositivo aparece en la lista 'fuera de línea' al lado, intente reiniciar el dispositivo. El demonio ADB en el dispositivo ocasionalmente se cuelga. Lo noté más cuando desconecté el cable mientras LogCat se está ejecutando y después de volver a conectarme a través de Wi-Fi o Ethernet.
Si su dispositivo no está en la lista, entonces debe probar las soluciones en las otras respuestas, comenzando con un puerto y cable USB diferente. Esos cables baratos pueden ir mal.
fuente
Asegúrese de usar
adb
desde suplatform-tools
carpeta, después de actualizar las herramientas del SDK.Finalmente conseguí este trabajo después de que me di cuenta de que estaba usando una versión obsoleta del ADB copiado
/usr/bin
.fuente
En algún momento esto puede suceder debido a un error del servidor adb (creo). Siempre dice
Solo mata el servidor y comienza de nuevo. Funcionó para mi.
fuente
Utilicé
adb connect <device_ip>
y ninguna de las otras soluciones funcionó porque mi problema estaba en el otro lado. En el dispositivo que necesitabastop adbd
y reiniciarlostart adbd
. El dispositivo ahora está "en línea" nuevamente.fuente
adb kill-server
,adb start-server
, a continuación,adb connect <device_ip>
como se sugirió anteriormente trabajó para mí.Me encontré con el mismo problema que esto me solucionó. conecte su teléfono a través de usb primero y luego asegúrese de verificar su IP móvil que está en configuración >> sobre teléfono >> estado ejecute los siguientes comandos.
fuente
Intenté dturvene y todas las demás soluciones, pero no funcionaron. Necesitaba un paso más.
Ejecute estos comandos
adb kill-server
android update sdk --no-ui
adb start-server
Para verificar que funcionó, ejecute 'adb version' antes y después de los comandos y asegúrese de que sea el último. La razón del
adb kill-server
comando es que lo más probable es que se esté ejecutando, y no se puede actualizar mientras se está ejecutando, por lo que primero debe eliminarlo.fuente
Para mí nada funcionó. Pasé unas 12 horas buscando constantemente en Internet y probando las soluciones que funcionaban para otras personas que tenían problemas similares.
Finalmente terminé haciendo las cosas de ADB a través de la LAN. La configuración estaba justo al lado de la configuración de Depuración de USB y en ADB se puede activar con "adb connect [IPADDRESS]: [PORT]". El puerto era 5555 en mi teléfono.
Espero que esto ayude a alguien a volver al trabajo en lugar de tener que lidiar con inconvenientes constantes.
fuente
Este enfoque funcionó para mí:
adb kill-server
adb start-server
Administrador de dispositivos, menú "Ver", "Dispositivos por conexión":
fuente
Inicialmente encontré el mismo problema (con ADB / fastboot descargado de GitHub ), pero finalmente lo puse a funcionar. Lo que funcionó para mí:
fuente
Instaló la última versión de Android SDK.
Cambió el puerto USB del dispositivo.
Cambiado de MTP -> Solo carga -> MTP.
Funcionó.
fuente
Si previamente autorizó la huella digital RSA de su PC y probó adb kill-server, etc. sin suerte, su problema podría ser simplemente que está intentando conectarse mientras está bloqueado. Intente presionar el botón de pantalla e ingresar su patrón; esto me lo arregló.
fuente
La mejor manera que pensé es deshabilitando y luego habilitando el dispositivo desde el Administrador de dispositivos y ejecutando el comando de dispositivos adb.
El dispositivo volverá a estar en línea. Es mas rapido.
fuente
Una posibilidad más para las personas con conexiones ADB débiles, y si están en una Mac y tienen Android File Transfer instalado: descubrí que la transferencia de archivos estaba interfiriendo con mi conexión ADB, haciendo que dejara de funcionar de manera intermitente.
Matar el
Android File Transfer Agent.app
proceso que busca dispositivos compatibles (por ejemplo, el Nexus 7) que se conecta a la Mac me cura las fallas.fuente
Como nadie dio una respuesta para mi situación: es posible que no tenga acceso al archivo ~ / .android / adbkey. Si inicialmente inicia adb con sudo, generará un par de claves públicas, escribiendo esto en ~ / .android / adbkey.pub y ~ / android / adbkey. Por supuesto, la clave privada es chmod 600, solo legible para root en su directorio de inicio. Posteriormente, el inicio de adb como usuario normal no dará acceso al archivo de clave privada, que a su vez fallará en silencio con el "dispositivo fuera de línea".
fuente
Lo que me resolvió en Mac fue actualizar
adb
a la última versión (1.0.32). Ahora puedo ver mi dispositivo en línea nuevamentefuente
La razón por la cual un dispositivo se informa como fuera de línea es que adb no puede conectarse a él. El ejecutable de Adb desde el entorno de desarrollo crea una conexión (socket) con el dispositivo bajo control. El dispositivo tiene un servicio (daemon) que escucha esta comunicación. El demonio se llama adbd (como en adbdaemon). Cuando uno habilita adb en un dispositivo, de hecho, inicia este demonio, por lo que se pueden establecer comunicaciones con el dispositivo.
Cuando adb informa que el dispositivo está fuera de línea es porque el daemon ya no se está ejecutando o está en un estado que no aceptará conexiones. En la mayoría de los casos, esto sucede si la red se cae en una conexión activa (red).
La única forma de solucionar esto fue reiniciando el dispositivo. Se puede llegar a corregir el estado fuera de línea por muchos otros medios, pero reiniciar el dispositivo siempre funciona.
fuente
Cuando me enfrento a los mismos problemas que hacer lo siguiente:
fuente
Es solo porque su computadora no tiene el controlador correcto. Para arreglar eso:
Descargue y extraiga el SDK de Android
Vaya al Administrador de dispositivos (haga clic con el botón derecho en Computadora -> Propiedades -> Administrador de dispositivos
En el panel derecho, expanda dispositivos portátiles para encontrar su dispositivo
Haga clic derecho en el nombre de su dispositivo y haga clic en Actualizar software de controlador
Buscar en mi computadora el software del controlador
Busque la carpeta de su SDK de Android en el paso 1.
Siguiente y listo
fuente
Intente reiniciar el servidor adb de la siguiente manera:
También me he encontrado con los mismos problemas que el tuyo. Y reiniciar el servidor adb resolverá este problema.
fuente
Actualicé muchas veces, hasta que no pude actualizar más, pero nunca recibí un mensaje en mi pantalla; Seguí desconectando el dispositivo.
Mi problema era que estaba ejecutando el comando ADB desde un directorio diferente al que realmente se estaba actualizando.
El directorio actualizado correcto para el ADB exe es:
fuente
Reinicia el dispositivo. Intenté todo lo que aparece aquí para que mi teléfono HTC (con Android 4.0.3) funcione, pero
adb devices
seguí diciendo que estaba desconectado. Después de reiniciar el teléfono, finalmente estaba en línea. Algunas de las otras sugerencias aquí pueden haber contribuido a que se reconozca el teléfono, pero hacer algunos reinicios en el camino a medida que los esté probando ciertamente no dolerá.fuente