AdbCommandRejectedException: unzureichende Berechtigungen für Gerät: Benutzer in der Gruppe plugdev; sind deine udev-regeln falsch?

27

Vor fünf Tagen habe ich Android Studio auf einem vollständig aktualisierten Ubuntu 2018.04 installiert, mit dem Assistenten eine Beispiel-App erstellt, die Schaltfläche "Ausführen" gedrückt und es lief einwandfrei auf meinem über USB verbundenen Android-Gerät.

Heute habe ich auf demselben Ubuntu und mit demselben angeschlossenen Gerät dasselbe Projekt geöffnet und erneut auf "Ausführen" geklickt. Es schlägt jetzt fehl:

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

Ich habe wissentlich keine Ubuntu-Konfiguration geändert oder sogar das Betriebssystem aktualisiert.

Woran könnte das liegen?
Wie kann man weiter nachforschen?

Nicolas Raoul
quelle

Antworten:

40

Dieses Verfahren löst das Problem für mich:

  • Ziehen Sie auf dem Android-Gerät das Hauptmenü und wählen Sie "USB für Dateiübertragung"
  • Drücken Sie erneut "Ausführen"

Es mag vielleicht ein Zufall sein, aber es hat bisher immer (ungefähr 50 Mal) funktioniert.

In den letzten Versionen von Android hat sich der Name des Menü- und Auswahlelements etwas geändert, aber es funktioniert immer noch für mich.

Nicolas Raoul
quelle
2
Vielen Dank! Für mich geht das. Wenn ich nur USB-Debugging auswähle, funktioniert es nicht, aber wenn ich USB-Dateiübertragung auswähle, wird die App sofort ausgeführt.
Pramod Gharu
16

Kurz gesagt: Die Gruppe des USB-Geräts ist rootnicht plugdev.

Datei hinzufügen /etc/udev/rules.d/51-android.rules

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

( lsusb18d1:d002)

Und das Ein- und Ausstecken erledigte die Arbeit für mich. Das Gerät ist jetzt in der plugdevGruppe.

( Quelle )

Benutzer
quelle
Dies löst das Problem für mich
dmSherazi
6

Ich habe einen ähnlichen Fehler erhalten, weil udev-Regeln nicht konfiguriert wurden:

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]

Ich konnte das umgehen, indem ich Folgendes ausführte:

adb kill-server && adb start-server

aber das war überhaupt nicht ideal. Ich habe es behoben, indem ich Folgendes installiert habe:

sudo apt install android-tools-adb

Dies ist ein von der Community gepflegter Standardsatz von udev-Regeln.

Quelle

Kirche
quelle
0

Wie einer von ihnen erwähnte, hat das Entfernen des USB-Kabels vom Laptop und das erneute Anschließen den Trick für mich getan. (Möglicherweise habe ich die USB DebuggingOption aktiviert, nachdem ich sie zum ersten Mal angeschlossen habe, daher der Fehler.)

Rocky Inde
quelle