Ubuntu下adb devices不识别某些设备的解决办法

在使用adb进行android设备的管理时,有时候会出现无法识别设备的问题,比如执行adb devices命令的时候列表为空,List of devices attached下面为空。这种问题多发生在不知名厂商设备上,一般是驱动问题,要解决这个问题,就是让驱动加载上。 首先查看设备是否正常:lsusb lsusb 设备没有问题,看到这,这个厂商竟然连名字都没有-。-ID后面的22da:0c03,22da表示厂商的唯一ID,0c03表示产品的ID,这个22da是个十六进制的数字,前面还有0x被省略了。 然后在/etc/udev/rules.d/下创建一个rules文件,设备连接是这个配置文件将会被查询,我们命名为51-android.rules
$ sudo vim /etc/udev/rules.d/51-android.rules
内容编辑如下:
SUBSYSTEM=="usb", ENV{DEVTYPE}=="22da", MODE="0666", OWNER="killer"
SUBSYSTEM代表usb设备,ENV{DEVTYPE}代表厂商唯一ID,MODE代表权限,OWNER代表所有者,只有这个用户才有权限操作。然后修改权限
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
然后编辑文件:
$ echo "0x22da" >> ~/.android/adb_usb.ini
保存退出,然后执行命令
$ sudo /etc/init.d/udev restart
$ adb device
adb 就可以看到设备了,我感觉这个很奇葩啊,0到F,而且在bootloader模式下这款手机的厂商识别码又变成HTC的,请看下图: lsusb2 个人感觉是这些厂商本身并没有研发设计能力,只是让HTC代为设计,做的实在很烂,这款手机处理器为四核,可是实际表现很差劲。