WEB开发网
开发学院手机开发Android 开发 Android设备连接豌豆荚等显示的设备名 阅读

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

 2012-11-08 19:29:01 来源:WEB开发网   
核心提示: 最近打算用JZ4770方案来做我们自己的产品,君正给的代码,Android设备连接豌豆荚等显示的设备名,是基于给艾诺定制的,每次用豌豆荚,对于不能识别的,就统一识别是OPhone.用豌豆荚,或者QQ电脑管家连接设备的时候,总是显示“艾诺 Novo7 Basic”

  最近打算用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。

Tags:Android 设备 连接

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接