当前位置: 代码迷 >> Android >> Android装置连接豌豆荚等显示的设备名
  详细解决方案

Android装置连接豌豆荚等显示的设备名

热度:96   发布时间:2016-05-01 12:54:46.0
Android设备连接豌豆荚等显示的设备名

        最近打算用JZ4770方案来做我们自己的产品。君正给的代码,是基于给艾诺定制的。每次用豌豆荚,或者QQ电脑管家连接设备的时候,总是显示“艾诺 Novo7 Basic”。很明显要改为我们自己的产品型号。目前只是用作开发板,后期要设计自己的板子。

        本来以为这个字符串“Novo7 Basic”是通过“设置>关于平板电脑>型号”获取的,但是通过修改xx.mk(xx代表板子类型)中的PRODUCT_MODEL := SmartQ7Candy之后,在

型号中看到的是SmartQ7Candy,但是通过USB连接电脑,仍然显示“艾诺 Novo7 Basic"。

        既然是通过USB识别的,用adb devices看了一下,果然显示"Novo7 Basic"。

        问了下老大,说这个值是通过读取/sys/class/android_usb/android0/iSerial得到的。在内核代码中搜索"android_usb",找到代码

drivers/usb/gadget/android.c

这里创建了一个android_usb的类,然后创建了一个类设备android0,

对于iSerial属性

DESCRIPTOR_STRING_ATTR(iSerial, serial_string)

strncpy(serial_string, CONFIG_USB_SERIAL_NUM, sizeof(serial_string) - 1);

很明显,该值是通过CONFIG_USB_SERIAL_NUM拷贝得来的。

于是修改内核的.config,将CONFIG_USB_SERIAL_NUM="Nono7 Basic"  --> CONFIG_USB_SERIAL_NUM="SmartQ Candy"

编译内核,烧录之后。发现QQ电脑管家识别为OPhone,我估计是因为“SmartQ Candy”不在它的设备列表里面,毕竟自己定义的,它肯定不知道的。对于不能识别的,就统一识别是OPhone.

用豌豆荚,可以识别为SmartQ Candy。

  相关解决方案