CN113918363A - 标签转换方法、装置、电子设备及计算机可读介质及产品 - Google Patents
标签转换方法、装置、电子设备及计算机可读介质及产品 Download PDFInfo
- Publication number
- CN113918363A CN113918363A CN202111189102.9A CN202111189102A CN113918363A CN 113918363 A CN113918363 A CN 113918363A CN 202111189102 A CN202111189102 A CN 202111189102A CN 113918363 A CN113918363 A CN 113918363A
- Authority
- CN
- China
- Prior art keywords
- parameter information
- platform
- specified
- information
- hardware abstraction
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
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
本申请公开了一种标签转换方法、装置、电子设备及计算机可读介质及产品,涉及数据处理技术领域,方法包括:获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;获取所述指定硬件抽象层对应的平台信息;基于所述平台信息将所述第一参数信息修改为第二参数信息;将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层,其中,所述第二参数信息能够被所述平台信息对应的硬件抽象层识别。
Description
技术领域
本申请涉及数据处理技术领域,更具体地,涉及一种标签转换方法、装置、电子设备及计算机可读介质及产品。
背景技术
目前,在使用手机时,应用程序、框架层以及硬件抽象层之间通过标签传递参数。然而,目前标签的通用性不强。
发明内容
本申请提出了一种标签转换方法、装置、电子设备及计算机可读介质及产品,以改善上述缺陷。
第一方面,本申请实施例提供了一标签转换方法,应用于电子设备内的转换模块,所述方法包括:获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;获取所述指定硬件抽象层对应的平台信息;基于所述平台信息将所述第一参数信息修改为第二参数信息;将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层,其中,所述第二参数信息能够被所述平台信息对应的硬件抽象层识别。
第二方面,本申请实施例还提供了一种标签转换装置,应用于电子设备内的转换模块,所述装置包括:第一获取单元,用于获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;第二获取单元,用于获取所述指定硬件抽象层对应的平台信息;处理单元,用于基于所述平台信息将所述第一参数信息修改为第二参数信息;返回单元,用于将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层,其中,所述第二参数信息能够被所述平台信息对应的硬件抽象层识别。
第三方面,本申请实施例还提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个应用程序配置用于执行上述方法。
第四方面,本申请实施例还提供了一种计算机可读介质,所述可读存储介质存储有处理器可执行的程序代码,所述程序代码被所述处理器执行时使所述处理器执行上述方法。
第五方面,本申请实施例还提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现上述方法。
本申请提供的标签转换方法、装置、电子设备及计算机可读介质及产品,首先获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;再获取所述指定硬件抽象层对应的平台信息;基于所述平台信息将所述第一参数信息修改为第二参数信息之后将所述第二参数信息返回所述应用程序。因此,不同平台信息对应的第一参数信息都可以转换为第二参数信息进行传输,减少了不同第一参数信息进行传输的适配成本。
本申请实施例的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请实施例的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种标签传递方法图;
图2示出了本申请实施例提供的电子设备的示意图;
图3示出了本申请实施例提供的标签转换方法的方法流程图;
图4示出了本申请又一实施例提供的标签转换方法的方法流程图;
图5示出了本申请再一实施例提供的标签转换方法的方法流程图;
图6示出了本申请一实施例提供的标签转换方法的方法流程图;
图7示出了本申请一实施例提供的标签转换方法的流程图框架图;
图8示出了本申请一实施例提供的转换模块的示意图;
图9示出了本申请一实施例提供的标签转换装置的模块框图;
图10示出了本申请又一实施例提供的电子设备的示意图;
图11示出了本申请一实施例提供的计算机可读存储介质的结构框图;
图12示出了本申请一实施例提供的计算机程序产品的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
当前,手机平板等电子设备的功能越来越强大,其硬件组成也相应的越来越复杂,其上能够运行的应用程序也越来越多。在安卓系统上,主要包括应用程序层、框架层以及硬件抽象层,各层之间普遍采用标签传递的方式实现通信。
请参阅图1,在一些实施方式中,应用程序层110下发标签,传递给框架层120,再通过框架层120传递给硬件抽象层130,硬件抽象层130收到标签后,开始执行标签所包含的内容。
然而,各个平台厂商自定义一些标签,例如高通标签、联发科标签,各个手机厂商也会自定义一些标签,例如OPPO标签、华为标签、小米标签等,这样就导致标签差异很大,碎片化很严重。
然而,发明人在研究中发现,上述转换层与硬件抽象层或者框架层存在较大耦合,在不同品牌的硬件设备以及不同厂商生产的电子设备之间复用性低,通用性不高。
因此,为了克服上述缺陷,本申请实施例提供了一种标签转换方法、装置、电子设备及计算机可读介质及产品,可以将应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息转修改为第二参数信息,再将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层。
请参阅图2,图2示出了本申请实施例提供的一种标签转换方法,该方法应用于电子设备200内的转换模块230。该电子设备200可以包括应用程序层(Application,APP)210、指定框架层(Framework)220、转换模块230以及指定硬件抽象层(Hardware AbstractionLayer,HAL)240。其中,应用程序层210分别和指定框架层220以及转换模块230相连接,指定框架层220分别和应用程序层210和指定硬件抽象层240相连接。其中,该电子设备200可以为智能手机、平板电脑、笔记本电脑、车载计算机等设备。其中,应用程序层210是应用软件所在的层,该应用程序层210可以通过一些接口和其他层进行通信,该接口可以为应用程序编程接口(Application Programming Interface,API)。框架层可以实现应用程序的核心功能,也能给开发人员提供组件来进行应用程序的开发。硬件抽象层为硬件访问提供了统一的接口,应用程序可以通过该硬件抽象层来访问不同的硬件设备。其中,该指定框架层220为不同的应用程序对应的框架层,例如,相机应用程序对应相机框架层;音乐应用程序对应音乐框架层。该指定硬件抽象层240为不同应用程序层对应的硬件抽象层,例如,相机应用程序对应相机硬件抽象层;音乐应用程序对应音乐硬件抽象层。
对于一些实施方式,该应用程序层210、指定框架层220以及指定硬件抽象层240之间可以通过标签进行层级之间的参数信息传递。例如,应用程序层210用户点击了美颜按钮,打开美颜,这时候应用程序层210就会下发美颜打开的标签,然后传递给指定框架层220,最后传递给指定硬件抽象层240层,指定硬件抽象层240收到美颜打开的信息后,开始执行美颜打开动作,这样后续从指定硬件抽象层240上传的预览图像就会有美颜效果,应用程序层210用户看到的预览也会有美颜效果。
在一些实施例中,安装在电子设备200上的应用程序可以处于应用程序层210,例如系统自带的相册应用程序、拍照应用程序、用户下载的游戏应用程序等,都可以处于应用程序层210。所述应用程序层210可以接入应用程序编程接口API以实现和其他模块或者其他层的通信。例如,所述应用程序层210可以接入应用程序编程接口API,实现分别和转换模块230以及指定框架层220的通信。
指定框架层220是应用程序的核心,应用程序共同遵守指定框架层220的约定并在此约定基础上共同扩展,该指定框架层220在满足应用程序不同需求的同时又使得应用程序不互相影响。例如,在一些实施例中,该指定框架层220可以提供给应用程序层210实现标签传输的应用程序编程接口API。在另一些实施例中,不同的应用程序还可以通过指定框架层220对指定硬件抽象层240对应的硬件设备进行控制而不会相互影响。例如,相机应用程序通过指定框架层220传递信息给指定硬件抽象层240,该指定硬件抽象层针对该信息的内容对相机发出控制指令;音乐应用程序通过指定框架层220传递信息给指定硬件抽象层240,该指定硬件抽象层针对该信息的内容对扬声器发出控制指令。
转换模块230可以处于指定框架层220中,所述转换模块230可以为Java归档包(Java Archive File,JAR)。所述Java归档包JAR是一种与平台无关的文件格式,可将多个文件合成一个文件。所述Java归档包JAR独立存在,不和指定框架层220产生代码调用关系。该Java归档包JAR用于实现将第一参数信息修改为第二参数信息。所述第一参数信息为应用程序层210通过指定框架层220传递给指定硬件层240的信息,所述第二参数信息为所述第一参数信息经过转换模块修改后获得的参数信息。第一参数信息和第二参数信息的详细信息可以参考后续实施例的介绍。
指定硬件抽象层240通过建立与硬件相关的驱动程序,将上层的调用转化为对硬件的直接访问和控制,所述上层可以为指定框架层220。对于一些实施方式,所述调用可以为用户通过应用程序发起参数信息,则应用程序层210将通过指定框架层220传输参数信息至指定硬件抽象层240,指定硬件抽象层240获取到该参数信息后,对相应的硬件做出访问和控制。其中,该参数信息在传输给指定框架层220前预先经过了转换模块230的修改。例如,用户打开相机应用程序,则应用程序层210就会向转换模块发送未经修改的第一参数信息,转换模块230将收到的第一参数信息修改后获得第二参数信息,并将第二参数信息返回给应用程序层210。应用程序210获取到第二参数信息后,将其发送给指定框架层220,指定框架层220再发送给指定硬件抽象层240,指定硬件抽象层240获取到第二参数信息后,对相机硬件及其相关的硬件做出访问和控制。
请参阅图3,图3示出了本申请实施例提供的一种标签转换方法,该方法应用于电子设备内的转换模块。作为一种实施方式,该电子设备可以包括处理器,该方法的执行主体可以是处理器。具体的,该方法包括步骤S310至步骤S340。
步骤S310:获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息。
由前述实施例可知,用户通过应用程序获得对应的硬件设备支持,需要通过应用程序层传递参数信息给框架层,再由框架层传递参数信息给指定硬件抽象层,以实现对相应硬件设备的访问和控制,所述由应用程序传递的参数信息可以为第一参数信息。对于一些实施方式,所述第一参数信息属于供应商标签(VendorTag)类型,所述供应商标签用于在不同的层之间传输参数信息,该不同的层可以包括应用程序层、指定框架层以及指定硬件抽象层。
对于一些实施方式,所述第一参数信息可以包括键值对(Key-value)。其中key为关键词,value为值。所述第一参数信息包括的键值对可以包括键名(Key name),例如,在本申请的一种实施例中,键名可以为key A。
对于另一些实施方式,所述第一参数信息包括的键值对还可以包括用于存放键名的数据类型,所述数据类型可以为整型(Int),字符串类型(String)、浮点类型(Float)等。例如,在本申请的一种实施例中,键名Key A可以以字符串类型存放。
对于又一些实施方式,所述第一参数信息包括的键值对还可以包括值,例如,该第一参数信息包括的键值对的值为1。
对于还一些实施方式,所述第一参数信息包括的键值对还可以包括用于存放值的数据类型,所述数据类型可以为整型,字符串类型、浮点类型等。例如,值可以以浮点型存放,也可以以整型存放。
对于一些实施方式,可以使用一个专用的存储模块来存放应用程序层发送的第一参数信息,此时转换模块可以直接从该存储模块中来调取出该第一参数信息即可。例如,在本申请的一种实施方式中,该存储模块可以为捕捉请求生成器(Capture RequestBuilder)。具体的,若当相机应用程序发起了对焦请求时,则应用程序层将包含有对焦请求的第一参数信息发送给捕捉请求生成器,此时转换模块就可以从捕捉请求生成器中获取到该第一参数信息。
对于另一些实施方式,也可以使应用程序层接入一个应用程序编程接口API,该应用程序编程接口API可以直接和转换模块实现通信,进而转换模块可以直接从应用程序层获取到第一参数信息。
步骤S320:获取所述指定硬件抽象层对应的平台信息。
由前述实施例可知,不同的供应商会定义一些自己的标签类型,例如高通标签、联发科标签等;不同的电子设备厂商也会自定义一些自己的标签,例如OPPO标签、华为标签、小米标签等。对于一些实施方式,可以定义一个平台信息,该平台信息用于表明其所对应的指定硬件抽象层所包括的标签类型。不同的电子设备厂商生产的电子设备可以对应不同的平台信息,例如,对于一些实施方式,OPPO生产的电子设备其指定硬件抽象层对应的平台信息可以为OPPO平台,华为生产的电子设备其指定硬件抽象层对应的平台信息可以为华为平台;小米生产的电子设备其指定硬件抽象层对应的平台信息可以为小米平台。不同电子设备厂商生产的电子设备还可以对应相同的平台信息,例如,对于另一些实施方式,OPPO生产的电子设备其指定硬件抽象层对应的平台信息可以为联发科平台,华为生产的电子设备其指定硬件抽象层对应的平台信息可以为联发科平台;小米生产的电子设备其指定硬件抽象层对应的平台信息可以为联发科平台。
对于一些实施方式,可以通过原生应用程序编程接口API获取到对应的平台信息。转换模块可以直接通过原生应用程序编程接口API获取到指定硬件抽象层对应的平台信息。例如,对于一些实施方式,该原生应用程序编程接口API可以为构建硬件(BuildHardware)。具体的,转换模块可以通过构建硬件接口直接获取到该硬件抽象层对应的平台信息以为OPPO平台;也可以直接获取到该硬件抽象层对应的平台信息以为高通平台等。
对于另一些实施方式,还可以通过读取系统属性的方式获取到对应的平台信息。转换模块可以直接读取系统属性中对应的位置,该位置标示出了该硬件抽象层对应的平台信息。例如,在一些实施方式中该信息可以通过字符串来直接表示出。具体的,转换模块读取到系统属性中对应位置标示的平台信息为OPPO平台,则获取到该硬件抽象层对应的平台信息为OPPO平台;转换模块读取到系统属性中对应位置标示的平台信息为华为平台,则获取到该硬件抽象层对应的平台信息为华为平台;转换模块读取到系统属性中对应位置标示的平台信息为小米平台,则获取到该硬件抽象层对应的平台信息为小米平台。在另一些实施方式中,该信息还可以通过数字、字母或者其组合来标示。对于此实施方式,该转换模块需要事先和系统约定好对照信息,例如,A1对应OPPO平台,A2对应华为平台,A3对应小米平台,B1对应高通平台,B2对应联发科平台。具体的,若该转换模块读取到系统属性中对应位置标示为A1,则获取到该硬件抽象层对应的平台信息为OPPO平台;若该转换模块读取到系统属性中对应位置标示为A2,则获取到该硬件抽象层对应的平台信息为华为平台;若该转换模块读取到系统属性中对应位置标示为A3,则获取到该硬件抽象层对应的平台信息为小米平台;若该转换模块读取到系统属性中对应位置标示为B1,则获取到该硬件抽象层对应的平台信息为高通平台;若该转换模块读取到系统属性中对应位置标示为B2,则获取到该硬件抽象层对应的平台信息为联发科平台。
可以理解的是,上述平台信息以及获取平台信息的方法仅仅是举例,具体的平台信息以及获取平台信息的在本申请的实施例中并不做限定。
步骤S330:基于所述平台信息将所述第一参数信息修改为第二参数信息。
由步骤S310可以获取到该第一参数信息,由步骤S320可以获取到该平台信息。对于一些实施方式,可以利用不同平台信息对应的平台转换器,将该第一参数信息修改为第二参数信息。例如,若获取到平台信息为OPPO平台,则使用OPPO平台转换器进行参数转换;若获取到平台信息为华为平台,则使用华为平台转换器进行参数转换;若获取到平台信息为小米平台,则使用小米平台转换器进行参数转换。
对于一些实施方式,所述第二参数信息属于供应商标签类型,所述供应商标签用于在不同的层之间传输参数信息,该不同的层可以包括应用程序层、指定框架层以及指定硬件抽象层。
进一步的,对于一些实施方式,不同平台信息对应的平台转换器可以预置在转换模块的Java归档包JAR中,当获取到平台信息后,可以直接从该Java归档包中调取出对应的平台转换器进行使用。例如,若转换模块获取到平台信息为OPPO平台,则从该Java归档包中调取出OPPO平台转换器进行参数转换。
对于另一些实施方式,上述平台信息对应的平台转换器还可以从网络服务器上获取。可以将不同平台信息对应的平台转换器存放在网络服务器中,当该转换模块获取到平台信息后,可以通过网络连接服务器,从服务器上获取到对应的平台转换器。例如,若转换模块获取到平台信息为OPPO平台,则从服务器中获取OPPO平台,将该OPPO平台转换器下载到该电子设备,再利用该OPPO平台转换器进行参数转换。
对于还一些实施方式,上述平台信息对应的平台转换器还可以从该电子设备的系统中获取。因为一个电子产品可以具有不止一种平台信息,所以需要通过步骤S320中确定的平台信息来获取对应的平台转换器。例如,若转换模块获取到平台信息为OPPO平台,则从该电子产品的系统中调取出OPPO平台转换器进行参数转换。
对于还一些实施方式,上述平台信息对应的平台转换器还可以从外部其他设备导入。可以将不同平台信息对应的平台转换器存放在外部其他设备中,当该转换模块获取到平台信息后,可以连接该外部其他设备,从该外部其他设备上获取到对应的平台转换器。其中该连接可以为通过数据线或者数据接头直接相连接,也可以为通过网线、wifi等方式接入互联网,通过互联网相连接。例如,若转换模块获取到平台信息为OPPO平台,则从外部其他设备中获取OPPO平台,将该OPPO平台转换器下载到该电子设备,再利用该OPPO平台转换器进行参数转换。
在一些实施方式中,将第一参数信息修改为第二参数信息,可以为修改一部分第一参数信息,不修改剩余部分的第一参数信息,然后将修改后的部分和未修改的部分进行组合,得到第二参数信息。例如,第一参数信息由A和B部分组成,可以将A部分修改为C部分,对B部分不做修改,然后将C部分和B部分组合成为第二参数信息。
在另一些实施方式中,将第一参数信息修改为第二参数信息,还可以为将第一参数信息全部修改,组成第二参数信息。例如,第一参数信息由A和B部分组成,可以将A部分修改为C部分,将B部分修改为D,然后将C部分和D部分组合成为第二参数信息。
步骤S340:将所述第二参数信息返回所述应用程序。
对于一些实施方式,将所述第二参数信息返回所述应用程序,可以为将第二参数信息返回捕捉请求生成器中,然后应用程序直接使用该捕捉请求生成器中的内容进行数据的传输。
对于另一些实施方式,将所述第二参数信息返回所述应用程序,还可以为将第二参数信息直接返回给应用程序,应用程序使用获取到的第二参数信息替换第一参数信息。
本申请提供的标签转换方法,首先获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;再获取所述指定硬件抽象层对应的平台信息;基于所述平台信息将所述第一参数信息修改为第二参数信息之后将所述第二参数信息返回所述应用程序。因此,不同平台信息对应的第一参数信息都可以转换为第二参数信息进行传输,减少了不同第一参数信息进行传输的适配成本。
请参阅图4,图4示出了本申请实施例提供的一种标签转换方法,该方法应用于电子设备内的转换模块。作为一种实施方式,该电子设备可以包括处理器,该方法的执行主体可以是处理器。具体的,该方法包括步骤S410至步骤S440。
步骤S410:获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息。
步骤S420:获取所述指定硬件抽象层对应的平台信息。
其中,步骤S410和步骤S420在上述实施例中已经详细描述,此处就不再赘述。
步骤S430:基于所述平台信息将所述第一键值对中每个第一键名替换为第二键名。
基于所述平台信息将所述第一键值对中每个第一键名替换为第二键名,所述第二键名与所述第一键值对中的值构成所述第二参数信息。
前述实施例已经详细描述了如何基于平台信息获取到平台转换器,此处就不再赘述。对于本申请的一种实施例,第一参数信息可以为第一键值对,该第一键值对可以包括第一键名和第一键值;第二参数信息可以为第二键值对,该第二键值对可以包括第二键名和第二键值。
对于一些实施方式,将所述第一键值对中每个第一键名替换为第二键名,可以对第一键值对中的所有数据进行遍历,查找出每一个第一键名,然后将每一个第一键名替换为第二键名,而不对除了第一键名之外的数据做替换,例如,不对第一键值做替换。然后再将替换后的第二键名和其他没有替换的数据一起组合成为第二参数信息。例如,若第一键值对中包括第一键名A1、第一键名A2、第一键名A3,以及第一键值1、第一键值2、第一键值3,则可以对第一键值对中的数据进行遍历,找出其中的所有键名为第一键名A1、第一键名A2、第一键名A3,将每一个第一键名替换为第二键名,将第一键名A1替换为第二键名B1,将第一键名A2替换为第二键名B2,将第一键名A3替换为第二键名B3。然后将第二键名B1、第二键名B2、第二键名B3以及第一键值1、第一键值2、第一键值3组合成为第二参数信息。
对于另一些实施方式,将所述第一键值对中每个第一键名替换为第二键名,可以对第一键值对中的所有数据进行遍历,查找出每一个第一键名,然后将每一个第一键名替换为第二键名,并对将第一键名之外的数据进行复制,例如,将第一键值复制得到第二键值。然后再将替换后的第二键名和其他复制后的数据一起组合成为第二参数信息。例如,若第一键值对中包括第一键名A1、第一键名A2、第一键名A3,以及第一键值1、第一键值2、第一键值3,则可以对第一键值对中的数据进行遍历,找出其中的所有键名为第一键名A1、第一键名A2、第一键名A3,将每一个键名替换为第二键名,将第一键名A1替换为第二键名B1,将第一键名A2替换为第二键名B2,将第一键名A3替换为第二键名B3;对于键值则直接复制得到第二键值,将第一键值1、第一键值2、第一键值3复制得到第二键值1、第二键值2、第二键值3。然后将第二键名B1、第二键名B2、第二键名B3以及第二键值1、第二键值2、第二键值3组合成为第二参数信息。
对于一些实施方式,第一键值对包括的第一键名和第一键值应该一一对应。因此在进行第一键名替换的时候,需要保留当前第一键名和第一键值的关系。具体的,可以在对第一键值对进行遍历的同时,对每一个第一键名以及第一键值进行对应编号。在对所有第一键名进行替换得到第二键名后,可以按照编号将替换后的第二键名与对应的第一键值进行组合,得到第二参数信息。例如,若第一键值对中包括第一键名A1、第一键名A2、第一键名A3,以及第一键值1、第一键值2、第一键值3,且键名和键值按照顺序一一对应,则进行遍历时可以将第一键名A1和第一键值1编为1号,将第一键名A2和第一键值2编为2号,将第一键名A3和第一键值3编为3号。然后将第一键名A1替换为第二键名B1,将第一键名A2替换为第二键名B2,将第一键名A3替换为第二键名B3。再将编号为1号的第二键名B1与第一键值1组合,将编号为2号的第二键名B2与第一键值2组合,将编号为3号的第二键名B3与第一键值3组合,获得第二参数信息。
对于又一些实施方式,还可以通过在遍历的同时进行替换的方式,保证键值和键名的一一对应。具体的,可以在进行遍历的时候,每发现一个键名,就立即将该第一键名替换为第二键名,并和当前键值进行组合,完成该次替换以及组合后再继续进行遍历。例如,若第一键值对中包括第一键名A1、第一键名A2、第一键名A3,以及第一键值1、第一键值2、第一键值3,且键名和键值按照顺序一一对应,则进行遍历时,发现第一键名A1,将该第一键名A1替换为第二键名B1,然后将第二键名B1和第一键值1进行组合;然后再继续进行遍历,发现第一键名A2,将该第一键名A2替换为第二键名B2,然后将第二键名B2和第一键值2进行组合;然后再继续进行遍历,发现第一键名A3,将该第一键名A3替换为第二键名B3,然后将第二键名B3和第一键值3进行组合,最终得到第二参数信息。
步骤S440:将所述第二参数信息返回所述应用程序。
其中,步骤S440在上述实施例中已经详细描述,此处就不再赘述。
本申请提供的标签转换方法,首先获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;再获取所述指定硬件抽象层对应的平台信息;基于所述平台信息将所述第一参数信息修改为第二参数信息之后将所述第二参数信息返回所述应用程序。因此,不同平台信息对应的第一参数信息都可以转换为第二参数信息进行传输,减少了不同第一参数信息进行传输的适配成本。
请参阅图5,图5示出了本申请实施例提供的一种标签转换方法,该方法应用于电子设备内的转换模块。作为一种实施方式,该电子设备可以包括处理器,该方法的执行主体可以是处理器。具体的,该方法包括步骤S510至步骤S540。
步骤S510:由指定数据结构内获取到第一参数信息。
由指定数据结构内获取到第一参数信息,所述指定数据结构用于存放所述应用程序请求通过指定框架层传递给指定硬件抽象层的参数信息。对于一些实施方式,该指定数据结构可以为捕捉请求生成器,该应用程序请求通过指定框架层传递给指定硬件抽象层的参数信息可以为第一参数信息。该捕捉请求生成器还可以用于存储第二参数信息。
对于一些实施方式,应用程序可以将待传递的第一参数信息存放在捕捉请求生成器中,则转换模块可以直接从该捕捉请求生成器中获取到第一参数信息。
步骤S520:获取所述指定硬件抽象层对应的平台信息。
步骤S530:基于所述平台信息将所述第一键值对中每个第一键名替换为第二键名。
其中,步骤S520至步骤S530在前述实施例中已经详细描述,此处就不再赘述。
步骤S540:将所述指定数据结构内的第一参数信息修改为第二参数信息。
由步骤S530获取到第二参数信息,可以将该第二参数信息发送给捕捉请求生成器,然后使用该第二参数信息替换第一参数信息。具体的,对于一些实施方式,可以先将第一参数信息删除,然后再将第二参数信息放入相同的存储单元。对于另一些实施方式,还可以直接使用第二参数信息覆盖掉第一参数信息。
请参阅图6,图6示出了本申请实施例提供的一种标签转换方法,该方法应用于电子设备内的转换模块。作为一种实施方式,该电子设备可以包括处理器,该方法的执行主体可以是处理器。具体的,该方法包括步骤S610至步骤S640。
步骤S610:基于预先与所述应用程序建立的应用接口,由所述指定数据结构内获取到第一参数信息。
对于一些实施方式,该预先与所述应用程序建立的应用接口可以为应用程序编程接口API,该应用程序编程接口API可以为一些预先定义的接口,以实现该电子设备不同软件以及硬件之间的相互通信和数据共享。在本申请的实施例中,该应用程序编程接口API可以为构建硬件。该转换模块通过该构建硬件接口实现和指定数据结构的通信,进而从该指定数据结构中获取到第一参数信息。
对于一些实施方式,该指定数据结构可以为捕捉请求生成器,该指定数据结构在前述实施例中已经详细描述,此处就不再赘述。
步骤S620:获取所述指定硬件抽象层对应的平台信息。
步骤S630:基于所述平台信息将所述第一键值对中每个第一键名替换为第二键名。
步骤S640:将所述第二参数信息返回所述应用程序。
其中,步骤S620至步骤S640在前述实施例中已经详细描述,此处就不再赘述。
本申请提供的标签转换方法,首先获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;再获取所述指定硬件抽象层对应的平台信息;基于所述平台信息将所述第一参数信息修改为第二参数信息之后将所述第二参数信息返回所述应用程序。因此,不同平台信息对应的第一参数信息都可以转换为第二参数信息进行传输,减少了不同第一参数信息进行传输的适配成本。
请参阅图7,图7示出了本申请实施例提供的一种标签转换方法的流程框架图。该流程框架图包括应用程序层710,指定框架层720,转换模块730,指定硬件层740。其中,应用程序层710分别和指定框架层720以及转换模块层730相连接,指定框架层720分别和应用程序层710以及指定硬件抽象层740相连接。转换模块730获取到应用程序层710提供的通用标签,将该通用标签修改为自定义标签后发送给应用程序层710,应用程序层710获取到该自定义标签后,经由指定框架层720,传输给指定硬件抽象层740。其中,该通用标签可以为第一参数信息,该自定义标签可以为第二参数信息。
请参阅图8,图8示出了本申请实施例提供的一种标签转换方法应对的转换模块的流程图,该流程图包括步骤S810至步骤S840,该流程图还包括平台转换器850。
步骤S810:获取平台信息。
步骤S820:获取第一参数信息。
步骤S830:获取平台信息对应的平台转换器。
步骤S840:获取第二参数信息。
对于一些实施方式,该转换模块首先通过获取平台信息;然后基于该平台信息从平台转换器850中选择对应的平台转换器;再将获取到的第一参数信息输入至获取到的对应的平台转换器中,则获取到第二参数信息。其中,平台转换器850可以包括OPPO平台转换器851、华为平台转换器852、小米平台转换器853、高通平台转换器854、联发科平台转换器855。
请参阅图9,其示出了本申请实施例提供的一种标签转换装置900的结构框图,该装置可以包括:第一获取单元910、第二获取单元920、处理单元930以及返回单元940。
第一获取单元910,用于获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息。
第二获取单元920,用于获取所述指定硬件抽象层对应的平台信息。
进一步的,所述第二获取单元920还用于通过原生应用程序编程接口和通过读取系统属性的至少一种方式获取所述平台信息。
处理单元930,用于基于所述平台信息将所述第一参数信息修改为第二参数信息。
进一步的,所述处理单元930还用于基于所述平台信息将所述第一键值对中每个第一键名替换为第二键名,所述第二键名与所述第一键值对中的值构成所述第二参数信息。
进一步的,所述处理单元930还用于由指定数据结构内获取到第一参数信息,所述指定数据结构用于存放所述应用程序请求通过指定框架层传递给指定硬件抽象层的参数信息。
进一步的,所述处理单元930还用于将所述指定数据结构内的第一参数信息修改为第二参数信息,以使所述应用程序由所述指定数据结构内获取到所述第二参数信息。
进一步的,所述处理单元930还用于基于预先与所述应用程序建立的应用接口,由所述指定数据结构内获取到第一参数信息。
返回单元940,用于将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层,其中,所述第二参数信息能够被所述平台信息对应的硬件抽象层识别。
请参考图10,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备1000可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备。本申请中的电子设备1000可以包括一个或多个如下部件:处理器1010、存储器1020以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器1020中并被配置为由一个或多个处理器1010执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器1010可以包括一个或者多个处理核。处理器1010利用各种接口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1020内的指令、程序、代码集或指令集,以及调用存储在存储器1020内的数据,执行电子设备1000的各种功能和处理数据。可选地,处理器1010可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器100可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1010中,单独通过一块通信芯片进行实现。
存储器1020可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器1020可用于存储指令、程序、代码、代码集或指令集。存储器1020可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端1000在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图11,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质1100中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质1100可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质1100包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质1100具有执行上述方法中的任何方法步骤的程序代码1110的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码1110可以例如以适当形式进行压缩。
请参考图12,其示出了本申请实施例提供的一种计算机程序产品的结构框图1200。该计算机程序产品1200中包括计算机程序/指令1210,该计算机程序/指令1210被处理器执行时实现上述方法的步骤。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (11)
1.一种标签转换方法,其特征在于,应用于电子设备内的转换模块,所述方法包括:
获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;
获取所述指定硬件抽象层对应的平台信息;
基于所述平台信息将所述第一参数信息修改为第二参数信息;
将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层,其中,所述第二参数信息能够被所述平台信息对应的硬件抽象层识别。
2.根据权利要求1所述的方法,其特征在于,所述第一参数信息为第一键值对,所述基于所述平台信息将所述第一参数信息修改为第二参数信息,包括:
基于所述平台信息将所述第一键值对中每个第一键名替换为第二键名,所述第二键名与所述第一键值对中的值构成所述第二参数信息。
3.根据权利要求2所述的方法,其特征在于,所述获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息,包括:
由指定数据结构内获取到第一参数信息,所述指定数据结构用于存放所述应用程序请求通过指定框架层传递给指定硬件抽象层的参数信息。
4.根据权利要求3所述的方法,其特征在于,所述将所述第二参数信息返回所述应用程序,包括:
将所述指定数据结构内的第一参数信息修改为第二参数信息,以使所述应用程序由所述指定数据结构内获取到所述第二参数信息。
5.根据权利要求3所述的方法,其特征在于,所述由指定数据结构内获取到第一参数信息,包括:
基于预先与所述应用程序建立的应用接口,由所述指定数据结构内获取到第一参数信息。
6.根据权利要求1-5任一所述的方法,其特征在于,所述第一参数信息和所述第二参数信息均属于VendorTag类型。
7.根据权利要求1-5任一所述的方法,其特征在于,所述获取所述指定硬件抽象层对应的平台信息,包括:
通过原生应用程序编程接口和通过读取系统属性的至少一种方式获取所述平台信息。
8.一种标签转换装置,其特征在于,应用于电子设备内的转换模块,所述装置包括:
第一获取单元,用于获取应用程序请求通过指定框架层传递给指定硬件抽象层的第一参数信息;
第二获取单元,用于获取所述指定硬件抽象层对应的平台信息;
处理单元,用于基于所述平台信息将所述第一参数信息修改为第二参数信息;
返回单元,用于将所述第二参数信息返回所述应用程序,以使所述应用程序将所述第二参数信息通过所述指定框架层传递给指定硬件抽象层,其中,所述第二参数信息能够被所述平台信息对应的硬件抽象层识别。
9.一种电子设备,其特征在于,包括:一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
11.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111189102.9A CN113918363A (zh) | 2021-10-12 | 2021-10-12 | 标签转换方法、装置、电子设备及计算机可读介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111189102.9A CN113918363A (zh) | 2021-10-12 | 2021-10-12 | 标签转换方法、装置、电子设备及计算机可读介质及产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113918363A true CN113918363A (zh) | 2022-01-11 |
Family
ID=79239886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111189102.9A Pending CN113918363A (zh) | 2021-10-12 | 2021-10-12 | 标签转换方法、装置、电子设备及计算机可读介质及产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918363A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089109A (zh) * | 2022-05-30 | 2023-05-09 | 荣耀终端有限公司 | 计步数据的传输方法和相关装置 |
-
2021
- 2021-10-12 CN CN202111189102.9A patent/CN113918363A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089109A (zh) * | 2022-05-30 | 2023-05-09 | 荣耀终端有限公司 | 计步数据的传输方法和相关装置 |
CN116089109B (zh) * | 2022-05-30 | 2023-10-20 | 荣耀终端有限公司 | 计步数据的传输方法和相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI444216B (zh) | 基於移動終端實現遊戲之方法和裝置 | |
US7734583B2 (en) | Transparent virtual machine for mobile applications | |
CN102209111B (zh) | 云计算移动网络终端设备开放性跨平台系统 | |
US7920852B2 (en) | Compression of data transmitted between server and mobile device | |
US10360694B2 (en) | Methods and devices for image loading and methods and devices for video playback | |
US7747683B2 (en) | Method and system for operating applications for remote terminal devices | |
WO2018107719A1 (zh) | 数据分享方法、装置、终端设备和服务器 | |
CN112331235B (zh) | 多媒体内容的编辑控制方法、装置、电子设备和存储介质 | |
CN1422405A (zh) | 提供内容的装置及方法 | |
WO2015176648A1 (zh) | 将智能终端上的数据传输至电视终端的方法、装置 | |
CN106815055A (zh) | 移动应用动态布局的方法与系统 | |
KR100749845B1 (ko) | 모바일 액티브 페이지 기능을 제공하는 이동 단말 및 그의무선 인터넷 서비스 제공 방법 | |
CN113918363A (zh) | 标签转换方法、装置、电子设备及计算机可读介质及产品 | |
KR100670605B1 (ko) | 멀티미디어 콘텐츠 서비스 시스템과 방법 및 그 기록매체 | |
CN111858101A (zh) | 面向云架构系统的适配方法、装置、设备及存储介质 | |
CN103917951B (zh) | 应用调用的方法及操作系统、浏览器 | |
WO2011097875A1 (zh) | 短消息定制业务的实现方法和短消息定制业务平台 | |
CN112487322B (zh) | 一种第三方应用Loading页面的加载方法及显示设备 | |
CN115061785A (zh) | 信息下发方法、装置、存储介质及服务器 | |
CN116208654A (zh) | 一种信息调用方法、装置、设备及存储介质、程序产品 | |
CN111080750A (zh) | 一种机器人动画配置方法、装置及系统 | |
CN112052377A (zh) | 资源推荐方法、装置、服务器和存储介质 | |
US20070168952A1 (en) | Methods for producing, transferring, and renewing virtual machine applications using flash, and system thereof | |
Byelozyorov et al. | An open modular middleware for interoperable virtual environments | |
CN111142846B (zh) | 组件开发方法、装置及系统、移动终端和可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |