android开发真机调试时,运行sudo ./adb devices 时,若有如下输出:
List of devices attached
???????????? no permissions
解决办法:
1. 查看还没有占有的文件名,这一步可以不做。
udevadm test /class/usb
2. lsusb
以下是我的输出(当前连的是ASUS Eee Pad)
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 192f:0416 Avago Technologies, Pte.
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 006: ID 0b05:4e1f ASUSTek Computer, Inc.
Bus 001 Device 003: ID 054c:038c Sony Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
3. 注意上面输出的蓝色一行:
Bus 001 Device 006: ID 0b05:4e1f ASUSTek Computer, Inc.
根据google的device 编号表
Manufacturer USB Vendor ID
Acer
0502
Asus 0b05
Dell
413cFoxconn
0489HTC
0bb4Huawei
12d1Motorola
22b8Samsung
04e8ZTE
19D2
4. 创建rules文件
sudo vi /etc/udev/rules.d/51-android.rules
文件内容:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0b05", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
第一行是Asus,第二行是HTC. 有人说要做mode= 写成 mode:=,可以试下。
5.保存后给予权限:
sudo chmod a+rx /etc/udev/rules.d/51-android.rules
6. sudo /etc/init.d/udev restart 或者 sudo restart udev
7. sudo ./adb kill-server8. sudo ./adb start-server
9. sudo ./adb devices
本文提供了一种解决Android设备在进行真机调试时遇到权限问题的方法。通过一系列步骤,包括查看设备USB信息、创建udev规则文件并赋予相应权限等,最终实现正常连接设备进行调试。
1926

被折叠的 条评论
为什么被折叠?



