AdbCommandRejectedException: autorisations insuffisantes pour le périphérique: utilisateur dans le groupe plugdev; vos règles udev sont-elles erronées?

27

Il y a cinq jours, j'ai installé Android Studio sur un Ubuntu 2018.04 entièrement mis à jour, utilisé l'assistant pour créer un exemple d'application, appuyé sur le bouton "Exécuter" et cela fonctionnait parfaitement sur mon appareil Android connecté via USB.

Aujourd'hui, sur le même Ubuntu et avec le même périphérique branché, j'ai ouvert le même projet et appuyé à nouveau sur "Exécuter". Il échoue maintenant:

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

Je n'ai sciemment modifié aucune configuration Ubuntu ni même mis à jour le système d'exploitation.

Quel pourrait être le problème?
Comment approfondir l'enquête?

Nicolas Raoul
la source

Réponses:

40

Cette procédure résout le problème pour moi:

  • Sur l'appareil Android, faites glisser le menu supérieur et sélectionnez «USB pour le transfert de fichiers»
  • Appuyez à nouveau sur "Exécuter"

Cela peut être accidentel, mais cela a toujours (environ 50 fois) fonctionné jusqu'à présent.

Dans les versions récentes d'Android, le nom du menu et de l'élément de choix a un peu changé, mais cela fonctionne toujours pour moi.

Nicolas Raoul
la source
2
Merci! Ça marche pour moi. Lorsque je choisis uniquement le débogage USB, cela ne fonctionne pas, mais lorsque je choisis le transfert de fichiers USB, l'application s'exécute instantanément.
Pramod Gharu
16

En bref: le groupe du périphérique USB ne l'est rootpas plugdev.

Ajout d'un fichier /etc/udev/rules.d/51-android.rules

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

( lsusb18d1:d002)

Et brancher et débrancher a fait le travail pour moi. Maintenant, l'appareil est dans le plugdevgroupe.

( source )

Utilisateur
la source
Cela résout le problème pour moi
dmSherazi
6

Je recevais une erreur similaire car les règles udev n'étaient pas configurées:

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]

J'ai pu contourner ce problème en exécutant:

adb kill-server && adb start-server

mais ce n'était pas du tout idéal. Je l'ai corrigé en installant:

sudo apt install android-tools-adb

Qui est un ensemble par défaut de règles udev gérées par la communauté.

la source

église
la source
0

Comme l'un d'eux l'a mentionné, retirer le cordon USB de l'ordinateur portable et le reconnecter a fait l'affaire pour moi. (J'ai peut-être activé l' USB Debuggingoption après l'avoir connectée la première fois, d'où l'erreur)

Rocky Inde
la source