【发布时间】:2015-06-07 07:45:28
【问题描述】:
我一直在尝试让adb 识别我的华为 8150 Ideos Android 设备,刷入 CyanogenMod 7.2.0,但目前它只显示
$> ./adb devices
List of devices attached
???????????? device
这是一个问题,因为它使我无法使用我目前正在使用的 IDE 的自动部署机制,例如 android-studio。
需要注意的是,我确实可以使用命令行直接将.apks 部署到设备上
$> ./adb install -r /path/to/apk/app-debug.apk
1577 KB/s (1166600 bytes in 0.722s)
pkg: /data/local/tmp/app-debug.apk
Success
我发现,adb takes the serial number information from the iSerial field from the devices USB interface。这里是lsusb的相关部分:
$> sudo lsusb -v
[ ... ]
Bus 003 Device 020: ID 12d1:1038 Huawei Technologies Co., Ltd. Ideos (debug mode)
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x12d1 Huawei Technologies Co., Ltd.
idProduct 0x1038 Ideos (debug mode)
bcdDevice 2.26
iManufacturer 1 Huawei Incorporated
iProduct 2 Ideos
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
[ ... ]
如您所见,iSerial 字段是0,所以在我看来,我的设备甚至没有序列号供adb 读取。
我不确定如何调试此问题,或者它是否可以修复,我将不胜感激。
【问题讨论】:
-
我也得到了这个,但尽管如此,Android Studio 对我来说仍然可以正常工作(虽然我只使用一个设备)。尝试以 root 身份运行 ADB & lsusb,看看是否有任何变化。从您的链接:“另外,设备中的 iSerial 字符串可能没有准备好。我看到很多工程产品根本没有 iSerial,或者所有设备都显示相同的设备 ID。” 我怀疑是否有任何解决方法。
-
@JonasCz 一定有我能做的某事。我对设备有完全的root访问权限,我之前刷过它,如果需要我会再刷一次。 :)
-
也许吧,但我不知道有什么办法。你试过以 root 身份运行 adb 吗?
-
@JonasCz 是的,我做到了。但它并没有改变任何东西。我还添加了一个有效的 udev 规则,我设置了正确的权限,重新加载了规则,重新启动,重新启动了 adb 服务器并完成了人们建议的大部分其他事情。底线:我认为这不是权限问题 :)
-
如果您负担得起,请使用带有 Google 官方版本的 Nexus 设备进行开发。第 3 方“模组”以许多损坏的功能、没有测试和支持而闻名。