AdbCommandRejectedException:デバイスの権限が不十分です:plugdevグループのユーザー。あなたのudevルールは間違っていますか?


27

5日前、完全に更新されたUbuntu 2018.04にAndroid Studioをインストールし、ウィザードを使用してサンプルアプリを作成し、[実行]ボタンを押して、USBで接続したAndroidデバイスで完全に実行しました。

今日、同じUbuntuで、同じdevicedをプラグインして、同じプロジェクトを開いて、もう一度「実行」を押しました。今では失敗します:

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の構成を故意に変更したり、OSを更新したりしませんでした。

何が問題なのでしょうか?
さらに調査する方法は?

回答:


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ルールのデフォルトセットです。

ソース


0

そのうちの1人が述べたように、ラップトップからUSBコードを取り外して再接続すると、うまくいきませんでした。(USB Debugging最初に接続した後にオプションを有効にした可能性があるため、エラーが発生しました)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.