Android 设备没有序列号

Android Device has no Serial Number

我一直在尝试让 adb 识别我的华为 8150 Ideos Android 设备,用 CyanogenMod 7.2.0 刷写,但目前,它只显示

$> ./adb devices
List of devices attached 
????????????    device

这是一个问题,因为它阻止我使用我目前正在使用的 android-studio 等 IDE 的自动部署机制。

应该注意的是,我确实可以使用

从命令行直接将 .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.

阅读

我不确定如何调试这个问题,或者它是否可以修复,我将不胜感激任何帮助。

我的华为 G600 也有同样的问题phone。尽管当我的 phone 通过 USB 连接时无法 return 一个有效的 ID/serial 号码,但 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 地址找到 phone 的 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 disconnect YOUR_IP_ADDRESS