No estoy seguro de si alguna vez resolvió este problema, pero me encontré con este y probé muchos procedimientos diferentes, cada uno de los cuales podría haber ayudado a otros, pero este es 2016 y un resumen podría ayudar.
Un teléfono nuevo comprado en 2016 no funcionó cuando instalé Android Studio en Linux. Un teléfono comprado en 2015 funcionó sin problemas. Un nuevo teléfono no funcionaba exactamente con la misma configuración.
Cuando tengo Android Studio abierto, el administrador de AVD no mostró el nuevo teléfono, pero sí el viejo. El teléfono antiguo, cuando estaba conectado en el enchufe USB, lanzó un cuadro de diálogo pidiéndome que confirmara la huella digital de la clave RSA, pero el nuevo teléfono no mostró el mismo cuadro de diálogo cuando estaba conectado.
Encontré un consejo en
/programming/18011685/cant-connect-nexus-4-to-adb-unauthorized
y lo probé y funcionó para mí.
Eliminé dos archivos adbkey y adbkey.pub de ~ / .android. Aparentemente, android-studio detecta esto y crea las claves de inmediato. Tan pronto como esto ocurre, el nuevo teléfono abrió el diálogo y comenzó a funcionar. Puedo ver el teléfono en el menú AVD de Android-Studio y comenzar a ejecutar las aplicaciones.
adb versión 1.0.31, PERO, si intento ejecutar 'dispositivos adb' en la línea de comando, Android-Studio deja de mostrar este teléfono en el menú AVD.
Todavía no veo el teléfono (pero eso no me molesta, ya que puedo ver el teléfono desde el menú AVD). La utilidad de línea de comandos adb solo mostró un emulador que se estaba ejecutando, pero no el teléfono conectado en modo de depuración, uno que se veía en el menú AVD, hasta que se ejecutó el comando.
$ adb devices
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
emulator-5554 device
En este punto, volver a conectar el teléfono no ayuda. El menú AVD solo mostró el emulador que todavía se estaba ejecutando en mi computadora.
Tienes que ejecutar 'adb kill-server'. Una vez hecho esto, y si abre el menú AVD, Android Studio inicializa su propio ADB y el teléfono aparece en el menú AVD.
adb versión 1.0.31 Android Studio 2.1
En resumen: dos cosas.
- Elimine adbkey y adbkey.pub de ~ / .android mientras Android Studio está abierto.
- No ejecute la utilidad de línea de comandos adb. Se mete con la instancia del servidor ejecutada por Android Studio. La instancia del servidor desde la línea de comandos funciona para algunos teléfonos, pero no para todos. Android-Studio funciona con todos los teléfonos que tengo.
Todo lo anterior es, por supuesto, después de asegurarse de:
- toca el 'número de compilación' 7 veces y habilita el modo de depuración USB ...
- intenté 'revocar los permisos de depuración' muchas veces
- intenté reiniciar el teléfono varias veces
- habilitar / deshabilitar / habilitar el modo de depuración usb,
Todos los pasos anteriores parecían cosas vudú para probar, pero esencialmente no funcionaron, excepto los que enumeré anteriormente.
(Actualización: Agregar esta línea que originalmente era un comentario, pero que pertenece a la respuesta).
También tuve que agregar la identificación del proveedor del nuevo teléfono al archivo /etc/udev/rules.d/51-android.rules para ayudar a identificar el nuevo teléfono y establecer los permisos.