Hoy encontré el insufficient permissions for deviceerror, a pesar de que adbhabía estado funcionando como se esperaba solo unos minutos antes. Ahora obtengo:
$ adb devices
List of devices attached
???????????? no permissions
$ adb shell
error: insufficient permissions for device
Poco antes de encontrar el error, lo había deshabilitado Media device (MTP), ya que pensé que no necesitaría usarlo MTP. Sin embargo, parece que la depuración de USB, o al menos algunos adbcomandos, requieren que Media device (MTP)esté habilitada.
Para habilitar Media device (MTP)en Android 4.4, vaya a:
Settings
Storage
The "..." menu (in the upper right corner)
USB computer connection
Media device (MTP)
Cuando MTPestá deshabilitado, lsusbmuestra lo siguiente:
Bus 002 Device 071: ID [idVendor1]:[idProduct1] Google Inc.
Después de habilitar MTP, lsusb muestra lo siguiente:
Bus 002 Device 072: ID [idVendor2]:[idProduct2] [idVendor string]
IdVendor e idProduct cambian, dependiendo de si MTPestá habilitado o no.
No soy un experto en Android, por lo que es posible que el comportamiento anterior sea específico para mi modelo particular de teléfono.