AdbCommandRejectedException: permissões insuficientes para dispositivo: usuário no grupo plugdev; suas regras do udev estão erradas?

8

Cinco dias atrás eu instalei o Android Studio em um Ubuntu totalmente atualizado 2018.04, usei o assistente para criar um aplicativo de exemplo, pressionei o botão "Executar" e ele funcionou perfeitamente no meu dispositivo Android conectado via USB.

Hoje, no mesmo Ubuntu e com o mesmo deviced plugged, abri o mesmo projeto e pressionei "Run" novamente. Agora falha:

Launching Application
$ adb push /home/nico/src/ActionBarCompat-Basic/Application/build/outputs/apk/debug/Application-debug.apk /data/local/tmp/com.example.android.actionbarcompat.basic
com.android.ddmlib.AdbCommandRejectedException: insufficient permissions for device: user in plugdev group; are your udev rules wrong?
See [http://developer.android.com/tools/device.html] for more information
Error while Installing APK

Eu não modifiquei nenhuma configuração do Ubuntu nem atualizei o sistema operacional.

Qual poderia ser o problema?
Como investigar mais?

    
por Nicolas Raoul 07.05.2018 / 09:25

3 respostas

13

Este procedimento resolve o problema para mim:

  • No dispositivo Android, arraste o menu superior e selecione "USB para transferência de arquivos"
  • Pressione "Executar" novamente

Pode ser acidental, mas sempre (cerca de 50 vezes) funcionou até agora.

    
por Nicolas Raoul 08.05.2018 / 10:48
0

Resumindo: o grupo do dispositivo USB é root , não plugdev .

Adicionando um arquivo /etc/udev/rules.d/51-android.rules

SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="d002", MODE="0660", 
GROUP="plugdev", SYMLINK+="android%n"

( lsusb18d1:d002 )

E ligar e desligar fez o trabalho para mim. Agora, o dispositivo está no grupo plugdev .

( source )

    
por User 22.06.2018 / 00:42
0

Eu estava recebendo um erro semelhante porque as regras do udev não estavam configuradas:

kirk@laptop:~$ adb devices
List of devices attached
FA7240300631    device
FA7240300631    no permissions (user in plugdev group; are your udev rules wrong?); see [http://developer.android.com/tools/device.html]

Consegui contornar isso executando:

adb kill-server && adb start-server

mas isso não era de todo ideal. Eu consertei instalando:

sudo apt install android-tools-adb

Qual é um conjunto padrão de regras do udev mantido pela comunidade.

fonte

    
por kirk 15.08.2018 / 15:22