【问题标题】:Android Device has no Serial NumberAndroid 设备没有序列号
【发布时间】: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 方“模组”以许多损坏的功能、没有测试和支持而闻名。

标签: android adb


【解决方案1】:

我的华为 G600 手机也有同样的问题。尽管当我的手机通过 USB 连接时无法返回有效的 ID/序列号,但 adb 似乎与设备通信正常。尽管如此,adb 报告的无效 ID 还是会触发 AndroidStudio。

这里有一个解决方法,如果你不介意这样做wirelessly

从通过 USB 插入的设备开始,然后:

$ adb usb
restarting in USB mode

$ adb devices
List of devices attached
????????????    device

$ adb tcpip 5555
restarting in TCP mode port: 5555

现在通过设置→关于→状态→IP地址找到手机的IP地址。

$ adb connect YOUR_IP_ADDRESS
connected to YOUR_IP_ADDRESS:5555

$ adb devices
List of devices attached 
????????????    device
YOUR_IP_ADDRESS:5555 device

现在您应该可以从 AndroidStudio 等访问您的设备了。

完成后,adb 断开 YOUR_IP_ADDRESS

【讨论】:

  • 看起来棒极了,谢谢!我一回家就试一试
猜你喜欢
  • 2021-06-29
  • 2011-09-13
  • 2015-01-02
  • 1970-01-01
  • 1970-01-01
  • 2018-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多