CN105389180A - 一种基于Android平台的USB端口可配置化方法 - Google Patents

一种基于Android平台的USB端口可配置化方法 Download PDF

Info

Publication number
CN105389180A
CN105389180A CN201510714869.7A CN201510714869A CN105389180A CN 105389180 A CN105389180 A CN 105389180A CN 201510714869 A CN201510714869 A CN 201510714869A CN 105389180 A CN105389180 A CN 105389180A
Authority
CN
China
Prior art keywords
usb
configuration
android
file
configuration file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510714869.7A
Other languages
English (en)
Other versions
CN105389180B (zh
Inventor
赵飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Technology (nanjing) Ltd By Share Ltd
Original Assignee
Technology (nanjing) Ltd By Share Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Technology (nanjing) Ltd By Share Ltd filed Critical Technology (nanjing) Ltd By Share Ltd
Priority to CN201510714869.7A priority Critical patent/CN105389180B/zh
Publication of CN105389180A publication Critical patent/CN105389180A/zh
Application granted granted Critical
Publication of CN105389180B publication Critical patent/CN105389180B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开的一种基于Android平台的USB端口可配置化方法,采用PC端工具解析Excel表格中的USB配置项,生成带数字标签的配置文件;配置文件打包到升级镜像中,对设备重新升级;设备端在Android系统运行时,解析进程解析配置文件,根据数字签名判断配置文件安全合法后进行USB端口配置,最终Excel中需要定制的USB配置信息在终端设备上生效。本发明的方法可以简化产品的USB端口开发与定制,缩短产品的开发周期。方案商以及ODM厂商在不用提供源码的前提下,帮助客户快速定制,从而防止核心源码泄露,保护核心知识产权。

Description

一种基于Android平台的USB端口可配置化方法
技术领域
本发明涉及USB端口配置技术领域,具体是一种基于Android平台的USB端口可配置化方法。
背景技术
随着移动互联网的蓬勃发展以及Android操作系统市场的份额以及影响力与日俱增,基于Android操作系统的智能终端(手机,平板电脑,数据卡以及智能穿戴设备)所提供的功能以及应用越来越多,蕴含着广阔的发展前景。
USB(UniversalSerialBus)接口以其可配置话、使用方便、数据传输速率高等特点而备广泛的应用到智能终端上面。USB总线协议支持设备接口种类十分丰富,包括常见的用于访问网络的RNDIS(RemoteNetworkDriverInterfaceSpecification)、用于调试ADB(AndroidDebugBridge)、支持媒体传输协议MTP(MediaTransferProtocol)、统一的移动宽带设备接口MBIM(MobileBroadbandInterfaceModel)等等。
根据USB协议规范,要使支持的端口正常工作,必须配置匹配的厂商标志(idVendor)、产品标志(idProduct)、设备版本号(bcdDevice)、描述厂商信息的字符串描述符(iManufacturer)、描述产品信息的字串描述符(iProduct)等等。
现有的Android平台,当要有新的定制需求时,需要工程师重新根据需求进行开发,涉及源码修改以及重新编译,花费大量人力以及时间成本。
发明内容
本发明要解决的问题是提供一种基于Android平台的USB端口可配置化方法,该方法可以通过PC端工具简单的修改Excel表格来实现,OEM技术人员不需要修改源码以及重新编译,缩短产品开发周期,节约了成本,并且可以保护方案商以及ODM厂商的知识产权,防止核心源码泄露。
本发明的基于Android平台的USB端口可配置化方法,包括PC端配置和Android设备配置过程。
所述PC端配置过程包括以下步骤:
11)根据具体的定制需求,添加原始USB配置信息到Excel表中;
12)解析工具应用软件首先对文件进行扫描,将输入文件拆分为列进行标记;然后进行语义解析,对每一列进行遍历,根据标点符号以及语法提取出关键信息;接着生成包含具体配置项的USB配置文件;最后完成数字签名,把数字秘钥插入文件中,生成带数字签名的USB配置文件;
13)对原先的Android升级压缩包进行解压,把步骤12)得到的配置文件放入Android设备的/usr/data/目录;重新压缩升级包制作完成,对Android设备重新升级。
Android设备配置过程包括以下步骤:
21)设备上电系统运行,Android系统启动,init进程运行中启动解析进程;
22)解析进程在/usr/data/目录查询USB配置文件是否存在,如果不存在,解析进程退出,按照Android系统默认流程启动;如果检测到USB配置文件存在,则开始获取解析文件的数字签名;如果获取到USB配置文件的数字签名与系统的数字签名不一致,解析进程退出,按照Android系统默认流程启动;如果获取数字签名合法(即配置文件的数字签名与系统的数字签名一致),则开始解析具体的USB配置项信息,把该配置信息以structusb_interface_config的数据结构存放到内存中,紧接着启动USB配置进程;
23)USB配置进程紧接步骤22)中的配置数据(idVendor,idProduct,bcdDevice…),把配置信息写入到USBsystemFS(文件系统)对应节点(一般目录为:/sys/class/android_usb/android0/XXX);
24)USB设备控制器收到来自步骤23)的写入操作,重新对设备进行枚举,枚举的设备描述符信息中包含步骤23)中写入的新的USB配置信息;
25)USB主机收到来自步骤24)的USB设备枚举信息,重新加载相应的驱动,端口识别成功,配置完成。
所述工具应用软件是基于Python语言编写的文件解析器,所述USB配置文件为usb.config。
本发明的基于Android平台的USB端口可配置化方法,可以简化产品的USB端口开发与定制,缩短产品的开发周期。可以保护方案商以及ODM厂商在不用提供源码的前提下,帮助客户快速定制,从而防止核心源码泄露,保护核心知识产权。该方法实施简单,效率高,配置方法稳定。
附图说明
图1是本发明PC端配置流程图;
图2是本发明Android设备配置流程图。
具体实施方式
本发明提供了一种基于Android平台的USB端口可配置化方法,为使本发明目的、技术方案及效果更加清楚、明确、易于理解,参照附图并举实例对本发明进一步详细说明。应当理解,此处所描述的具体实施仅用以解释本发明,并不用于限定本发明。
如图1和2所示,基于Android平台的USB端口可配置化方法,采用PC端工具解析Excel表格中的USB配置项,生成带数字标签的配置文件;配置文件打包到升级镜像中,对设备重新升级;设备端在Android系统运行时,解析进程解析配置文件,根据数字签名判断配置文件安全合法后进行USB端口配置,最终Excel中需要定制的USB配置信息在终端设备上生效。具体包括如下步骤:
PC端配置过程包括以下步骤:
11)根据具体的定制需求,添加原始USB配置信息到Excel表中;
Excel表举例如表1,所举例并没有本方法所采用的全部配置信息,只是作为一种举例。
表1Excel表举例
12)解析工具应用软件是基于Python语言编写的文件解析器,首先对文件进行扫描,将输入文件拆分为列进行标记;然后进行语义解析,对每一列进行遍历,根据标点符号以及语法提取出关键信息;接着生成包含具体配置项的USB配置文件;最后完成数字签名,把数字秘钥插入文件中,生成带数字签名的usb.configUSB配置文件;
13)对原先的Android升级压缩包进行解压,把步骤12)得到的配置文件放入Android设备的/usr/data/目录;重新压缩升级包制作完成,对Android设备重新升级。
Android设备配置过程包括以下步骤:
21)设备上电系统运行,Android系统启动,init进程运行中启动解析进程;
22)解析进程在/usr/data/目录查询USB配置文件是否存在,如果不存在,解析进程退出,按照Android系统默认流程启动;如果检测到USB配置文件存在,则开始获取解析文件的数字签名;如果获取到USB配置文件的数字签名与系统的数字签名不一致,解析进程退出,按照Android系统默认流程启动;如果获取数字签名合法(即配置文件的数字签名与系统的数字签名一致),则开始解析具体的USB配置项信息,把该配置信息以structusb_interface_config的数据结构存放到内存中,紧接着启动USB配置进程;
23)USB配置进程紧接步骤22)中的配置数据(idVendor,idProduct,bcdDevice…),把配置信息写入到USBsystemFS(文件系统)对应节点(一般目录为:/sys/class/android_usb/android0/XXX);
24)USB设备控制器收到来自步骤23)的写入操作,重新对设备进行枚举,枚举的设备描述符信息中包含步骤23)中写入的新的USB配置信息;
25)USB主机收到来自步骤24)的USB设备枚举信息,重新加载相应的驱动,端口识别成功,配置完成。
以上实施例仅用以说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,其均应涵盖在本发明的权利要求范围当中。

Claims (2)

1.一种基于Android平台的USB端口可配置化方法,其特征在于,包括PC端配置和Android设备配置过程;
所述PC端配置过程包括以下步骤:
11)根据具体的定制需求,添加原始USB配置信息到Excel表中;
12)解析工具应用软件首先对文件进行扫描,将输入文件拆分为列进行标记;然后进行语义解析,对每一列进行遍历,根据标点符号以及语法提取出关键信息;接着生成包含具体配置项的USB配置文件;最后完成数字签名,把数字秘钥插入文件中,生成带数字签名的USB配置文件;
13)对原先的Android升级压缩包进行解压,把步骤12)得到的配置文件放入Android设备的/usr/data/目录;重新压缩升级包制作完成,对Android设备重新升级;
Android设备配置过程包括以下步骤:
21)设备上电系统运行,Android系统启动,init进程运行中启动解析进程;
22)解析进程在/usr/data/目录查询USB配置文件是否存在,如果不存在,解析进程退出,按照Android系统默认流程启动;如果检测到USB配置文件存在,则开始获取解析文件的数字签名;如果获取到USB配置文件的数字签名与系统的数字签名不一致,解析进程退出,按照Android系统默认流程启动;如果获取数字签名合法,则开始解析具体的USB配置项信息,把该配置信息以structusb_interface_config的数据结构存放到内存中,紧接着启动USB配置进程;
23)USB配置进程紧接步骤22)中的配置数据(,把配置信息写入到USBsystemFS对应节点;
24)USB设备控制器收到来自步骤23)的写入操作,重新对设备进行枚举,枚举的设备描述符信息中包含步骤23)中写入的新的USB配置信息;
25)USB主机收到来自步骤24)的USB设备枚举信息,重新加载相应的驱动,端口识别成功,配置完成。
2.根据权利要求1所述的基于Android平台的USB端口可配置化方法,其特征在于,所述工具应用软件是基于Python语言编写的文件解析器,所述USB配置文件为usb.config。
CN201510714869.7A 2015-10-29 2015-10-29 一种基于Android平台的USB端口可配置化方法 Active CN105389180B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510714869.7A CN105389180B (zh) 2015-10-29 2015-10-29 一种基于Android平台的USB端口可配置化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510714869.7A CN105389180B (zh) 2015-10-29 2015-10-29 一种基于Android平台的USB端口可配置化方法

Publications (2)

Publication Number Publication Date
CN105389180A true CN105389180A (zh) 2016-03-09
CN105389180B CN105389180B (zh) 2019-01-29

Family

ID=55421487

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510714869.7A Active CN105389180B (zh) 2015-10-29 2015-10-29 一种基于Android平台的USB端口可配置化方法

Country Status (1)

Country Link
CN (1) CN105389180B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106454498A (zh) * 2016-11-03 2017-02-22 四川长虹电器股份有限公司 Android平台管理USB设备的方法
CN111708556A (zh) * 2020-05-26 2020-09-25 广州朗国电子科技有限公司 一种终端的多4g模块自动更新方法及装置
CN112888049A (zh) * 2021-01-26 2021-06-01 展讯半导体(成都)有限公司 数据传输控制方法、功能机及相关产品
CN114489815A (zh) * 2021-12-17 2022-05-13 航天信息股份有限公司 一种用于管理税务自助终端的usb外设的系统和方法
CN118445237A (zh) * 2024-06-27 2024-08-06 苏州元脑智能科技有限公司 一种通用串行总线端口的控制方法、装置以及产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545022A (zh) * 2003-11-18 2004-11-10 海信集团有限公司 手机大容量移动存储的方法
CN104408004A (zh) * 2014-10-22 2015-03-11 成都西可科技有限公司 基于usb接口的手机配置数据方法
CN104427380A (zh) * 2013-08-20 2015-03-18 联想(北京)有限公司 一种信息处理方法、电子设备及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1545022A (zh) * 2003-11-18 2004-11-10 海信集团有限公司 手机大容量移动存储的方法
CN104427380A (zh) * 2013-08-20 2015-03-18 联想(北京)有限公司 一种信息处理方法、电子设备及系统
CN104408004A (zh) * 2014-10-22 2015-03-11 成都西可科技有限公司 基于usb接口的手机配置数据方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106454498A (zh) * 2016-11-03 2017-02-22 四川长虹电器股份有限公司 Android平台管理USB设备的方法
CN106454498B (zh) * 2016-11-03 2019-06-04 四川长虹电器股份有限公司 Android平台管理USB设备的方法
CN111708556A (zh) * 2020-05-26 2020-09-25 广州朗国电子科技有限公司 一种终端的多4g模块自动更新方法及装置
CN112888049A (zh) * 2021-01-26 2021-06-01 展讯半导体(成都)有限公司 数据传输控制方法、功能机及相关产品
CN112888049B (zh) * 2021-01-26 2022-08-26 展讯半导体(成都)有限公司 数据传输控制方法、功能机及相关产品
CN114489815A (zh) * 2021-12-17 2022-05-13 航天信息股份有限公司 一种用于管理税务自助终端的usb外设的系统和方法
CN118445237A (zh) * 2024-06-27 2024-08-06 苏州元脑智能科技有限公司 一种通用串行总线端口的控制方法、装置以及产品

Also Published As

Publication number Publication date
CN105389180B (zh) 2019-01-29

Similar Documents

Publication Publication Date Title
US11120018B2 (en) Spark query method and system supporting trusted computing
CN108664239B (zh) 一种基于微服务的跨技术栈web前端开发系统及方法
CN111683066B (zh) 异构系统集成方法、装置、计算机设备和存储介质
CN105389180A (zh) 一种基于Android平台的USB端口可配置化方法
CN109062925B (zh) 自动生成insert语句的方法、装置、计算机设备及存储介质
CN108829467B (zh) 第三方平台对接实现方法、装置、设备及存储介质
CN112052013A (zh) 软件包的生成方法及装置、存储介质、电子装置
CN110865834B (zh) 应用程序界面更新方法、装置、可读存储介质及终端设备
CN102750152A (zh) 一种基于描述语言生成多种编程语言的应用的方法及装置
CN112765516A (zh) 页面内容的展示方法和装置、存储介质、电子装置
CN100585561C (zh) 在嵌入式系统剪裁可重定位的elf文件的方法
CN103761095B (zh) 一种生成通用的升级文件头部数据信息的方法
CN113268245A (zh) 代码分析方法、装置及存储介质
CN115098186A (zh) 项目处理方法、装置、计算机设备及存储介质
CN101739589B (zh) 生成智能卡数据的方法及装置
CN104216721A (zh) 一种在操作系统启动之前下发配置的方法
CN105094787B (zh) 企业互联网应用的处理方法及装置
CN112835901A (zh) 文件存储方法及装置、计算机设备、计算机可读存储介质
CN104598277A (zh) 一种移动端应用构建方法、移动端及系统
CN105407133B (zh) 一种移动应用自动化发布方法和系统
CN103902606A (zh) 一种数据库的数据处理方法和系统
CN111767498A (zh) 一种实现文件信息共享的方法和装置
CN115759029A (zh) 文档模板处理方法、装置、电子设备及存储介质
CN111539200B (zh) 一种生成富文本的方法、装置、介质和电子设备
CN112104544B (zh) 一种基于FreeMarker发送动态邮件的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant