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 il fonctionnait parfaitement sur mon périphérique Android connecté via USB.
Aujourd'hui, sur le même Ubuntu et avec le même appareil 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 enquêter davantage?
Cette procédure résout le problème pour moi:
C'est peut-être accidentel, mais cela a toujours fonctionné (environ 50 fois).
En bref: le groupe du périphérique USB est root
, pas 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"
(lsusb
→ 18d1:d002
)
Et brancher et débrancher a fait le travail pour moi. Le périphérique se trouve maintenant dans le groupe plugdev
.
( source )
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
Ce qui est un ensemble par défaut de règles udev géré par la communauté.
Comme l’a mentionné l’un d’eux, retirer le cordon USB de l’ordinateur portable et le rebrancher a été le bon choix pour moi. (J'ai peut-être activé l'option USB Debugging
après l'avoir connectée pour la première fois, d'où l'erreur)