Spreadtrum(供应商ID 1782)无法连接到adb

8
我有一部手机在Mac上可以通过adb检测到,但是在我的机器上却不能。所谓“无法检测”,是指它没有出现在lsusb中,而“adb devices”报告了一个空设备列表:
adb devices List of devices attached
我已经尝试过以下方法: - 更换USB电缆 - 确保设备处于USB调试模式 - 工厂重置设备 - 将供应商ID(1782)添加到/etc/udev/rules.d中 - 在~/.android/adb_usb.ini文件中添加条目(这是否必要?) - 多次执行adb start-server和adb kill-server序列 - 多次重新启动(和“sudo udevadm control --reload-rules”)
相关信息: - 运行Ubuntu 14.04 - 插入设备时添加到lsusb中的条目:
Bus 003 Device 003: ID 1782:5d01 Spreadtrum Communications Inc.
  • /etc/udev/rules.d/51-android.rules 中的一行:

SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"

  • 插入此设备时,tail -f /var/log/syslog 的输出结果为: Jul 17 18:40:12 josh-N56VJ kernel: [ 1289.390363] usb 3-2: new high-speed USB device number 7 using xhci_hcd Jul 17 18:40:12 josh-N56VJ kernel: [ 1289.390439] usb 3-2: 设备未响应设置地址命令。 Jul 17 18:40:12 josh-N56VJ kernel: [ 1289.594502] usb 3-2: 设备未响应设置地址命令。 Jul 17 18:40:12 josh-N56VJ kernel: [ 1289.798588] usb 3-2: 设备未接受地址为 7,错误代码为 -71 Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.094956] usb 3-2: new high-speed USB device number 9 using xhci_hcd Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.111786] usb 3-2: 发现新的 USB 设备,idVendor=1782,idProduct=5d01 Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.111797] usb 3-2: 新的 USB 设备字符串:Mfr=1,Product=2,SerialNumber=3 Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.111802] usb 3-2: 产品:DASH JR Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.111808] usb 3-2: 制造商:BLU Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.111813] usb 3-2: 序列号:19761202 Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.112433] usb-storage 3-2:1.0: 检测到 USB 大容量存储设备 Jul 17 18:40:13 josh-N56VJ kernel: [ 1290.112598] scsi6 : usb-storage 3-2:1.0 Jul 17 18:40:13 josh-N56VJ mtp-probe: 正在检查总线 3,设备 9:“/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2” Jul 17 18:40:13 josh-N56VJ mtp-probe: 总线:3,设备:9 不是 MTP 设备 Jul 17 18:40:14 josh-N56VJ kernel: [ 1291.112557] scsi 6:0:0:0: Direct-Access Spreadtr umopenphone 02 PQ: 0 ANSI: 2 Jul 17 18:40:14 josh-N56VJ kernel: [ 1291.113091] sd 6:0:0:0: Attached scsi generic sg2 type 0 Jul 17 18:40:14 josh-N56VJ kernel: [ 1291.115046] sd 6:0:0:0: [sdb] Attached SCSI removable disk
我可以使用相同的USB端口和电缆调试其他设备,但不知道为什么这部手机无法连接。其他相关问题如下:
- Android: adb无法识别手机 - adb设备时不时不显示我的设备 - 在真实设备上运行我的应用程序存在问题
第一个链接与此问题类似,但我没有看到解决方法。adb是否考虑除udev规则中的设备列表之外的设备列表?还有其他东西占用了该设备并阻止adb注意到它吗?
编辑 - 确认我是plugdev组的成员。
1个回答

7

问题已解决,感谢这个非常有帮助的回答提供了通用规则:

ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:ff420?:*", MODE="0666"

ADB在Ubuntu 12.04中无法检测到三星i777设备

感谢@alex-p的帮助。

附加信息:

手机型号 = Blu Dash Jr

编辑 我还需要手动将厂商ID(1782)添加到~/.android/adb_usb.ini文件中,如下所示:

# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
# USE 'android update adb' TO GENERATE.
# 1 USB VENDOR ID PER LINE.
0x1782

我仍然不确定供应商ID列表应该在哪里进行编辑,因为文件告诉我不要这样做,但这样可以解决问题。


谢谢!我遇到了完全相同的问题,你的答案完美解决了它! - ziritrion
这也适用于Intex Cloud FX,其vendorID = 1782(和deviceID = 5d04)。 - Tom Ellis
谢谢!这是在我尝试了十几种解决方案后唯一有效的一个。 - Harish Rana

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接