首页 > 代码库 > adb无法找到设备

adb无法找到设备

一,解决方案1.

1,使用如下命令,得到机器的pid和vid.

lsusb
你会看到如下反馈:

Icon

Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 004: ID 413c:2107 Dell Computer Corp. 
Bus 003 Device 003: ID 046d:c077 Logitech, Inc. 
Bus 003 Device 023: ID 0e8d:201d lenovo Inc. 
Bus 003 Device 012: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
其中,我们的机器是lenovo,那么我们可以得到我们的vid以及pid.分别为:0e8d:201d.

2,在.android目录中,新建adb_usb.ini文件,在这个文件中写入我们刚才得到的vid.

1,cd     ~/.android/
2,touch adb_usb.ini
3,将vid写入adb_usb.ini中.

3,在管理员模式下进行kill-server和start-server操作.

1, sudo     -s
2,adb kill-server
2,adb  start-server.
 
或者
1,  sudo adb kill-server
2,  sudo adb  start-server.
二,解决方案2.

有些设备无法被ubuntu管理,可能是系统没有权限进行某些操作.android官方给出了一些解决方案.可进行如下操作:

在文件中加入如下内容:

1,sudo vim /etc/udev/rules.d/50-Android.rules
其中 DEVTYPE是我们方案1中通过lsusb得到的设备描述.如mtk的设备描述为:MediaTek Inc.

usb_device,是usb的uid.uid的获取可以参考方案1.

然后进行方案1中的第3个步骤.

2,SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", MODE="0666".
例如:
SUBSYSTEM=="usb", SYSFS{"High Tech Computer Corp."}=="0bb4", MODE="0666"
三,常见问题:

1,出现如下现象的解决方案.

此种现象,说明你的机器已被识别,但是ubuntu需要权限.

List of devices attached 
???????????? no permissions
请执行如下操作:

1, sudo     -s
2,adb kill-server
2,adb  start-server.
 
或者
1,  sudo adb kill-server
2,  sudo adb  start-server.

adb无法找到设备