AdbCommandRejectedException: недостаточно прав для устройства: пользователь в группе plugdev; ваш udev правил неправильно?

27

Пять дней назад я установил Android Studio на полностью обновленную Ubuntu 2018.04, использовал мастер для создания примера приложения, нажал кнопку «Выполнить», и он отлично работал на моем устройстве Android, подключенном через USB.

Сегодня в том же Ubuntu и с тем же подключенным устройством я открыл тот же проект и снова нажал «Run». Теперь это не удается:

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

Я сознательно не изменял конфигурацию Ubuntu и даже не обновлял ОС.

В чем может быть проблема?
Как расследовать дальше?

Николас Рауль
источник

Ответы:

40

Эта процедура решает проблему для меня:

  • На устройстве Android перетащите верхнее меню и выберите «USB для передачи файлов».
  • Нажмите «Выполнить» еще раз

Это может быть случайным, но это всегда (около 50 раз) сработало до сих пор.

В последних версиях Android название меню и пункт выбора немного изменились, но он все еще работает для меня.

Николас Рауль
источник
2
Благодарность! Меня устраивает. Когда я выбираю только отладку по USB, это не работает, но когда я выбираю передачу по USB, приложение запускается мгновенно.
Прамод Гару
16

Вкратце: группа устройств USB есть root, а не plugdev.

Добавление файла /etc/udev/rules.d/51-android.rules

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

( lsusb18d1:d002)

И подключение и выход сделал работу для меня. Теперь устройство находится в plugdevгруппе.

( источник )

пользователь
источник
Это решает проблему для меня
dmSherazi
6

Я получал похожую ошибку из-за того, что правила udev не были настроены:

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]

Я смог обойти это, запустив:

adb kill-server && adb start-server

но это было совсем не идеально. Я исправил это, установив:

sudo apt install android-tools-adb

Это поддерживаемый сообществом набор правил udev по умолчанию.

источник

Kirk
источник
0

Как упомянул один из них, отсоединение USB-кабеля от ноутбука и его повторное подключение помогли мне. (Возможно, я включил USB Debuggingопцию после того, как я подключил ее в первый раз, поэтому ошибка)

Роки Инд
источник