adb devices no permissions

no permissions (user in plugdev group; are your udev rules wrong?); see [http://developer.android.com/tools/device.html]

参考:https://blog.csdn.net/binglumeng/article/details/69525361


安装好adb工具之后,连接安卓设备,并开启usb调试,使用adb devices发现显示出来的竟然是?????? no permissions

在网上查看到有相关解决方案1

  • 首先,在未连接Android设备的情况下,查看一下Linux下的usb,类似如下

    
    # 运行lsusb命令
    
    lsusb
    
    # 结果
    
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 003: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
    Bus 001 Device 005: ID 0cf3:e005 Atheros Communications, Inc.
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
  • 然后,打开android设备的usb调试模式,连接到Linux电脑上,运行

    
    # 运行lsusb指令,查看设备信息
    
    lsusb
    
    # 显示结果如下
    
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 003: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
    Bus 001 Device 005: ID 0cf3:e005 Atheros Communications, Inc.
    Bus 001 Device 019: ID 2207:0010   # 此条新增的条目,则是新连接的android设备
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    如上则可以查看到新连接的Android设备信息,注意其ID号,这里是22070010

  • 然后cd /etc/udev/rules.d/目录下,查看.rules文件

    cd /etc/udev/rules.d/
    ls
    
    # 结果如下,名称可能不同
    
    51-android.rules
    
    # 然后编辑该文件
    
    sudo vim 51-android.rules
    
    # 然后加入如下代码
    
    SUBSYSTEM=="usb",ATTRS{idVendor}=="2207",ATTRS{idProduct}=="0010",MODE="0666"
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    这里22070010则分别是上一步中查看到的android设备的额ID信息,MODE应该是表示权限。

  • 重启设备

    sudo chmod a+rx /etc/udev/rules.d/51-android.rules
    sudo service udev restart
    • 1
    • 2

至此,拔掉usb重新连接,然后在运行如下命令,便可进行adb操作

sudo adb kill-server
sudo adb start-server
sudo devices
# 若要需要root权限进入Android设备的shell,可以运行
adb root
adb remount
adb shell

猜你喜欢

转载自blog.csdn.net/wangpanbaoding/article/details/80926563
今日推荐