一种兼容同名AIDL的方法、装置及计算机程序产品制造方法及图纸

技术编号:32350471 阅读:27 留言:0更新日期:2022-02-20 02:16
本申请公开了一种兼容同名AIDL的方法、装置及计算机程序产品,该方法包括:获取产品型号;根据所述产品信号获取与所述产品型号对应的目标函数序号;调用与所述目标函数序号对应的安卓接口定义语言AIDL。这样,当售出若干代产品之后,可以根据产品型号获取与产品型号对应的目标函数序号,从而获取到与该产品对应的AIDL,这样使得产品可以与AIDL相兼容。这样使得产品可以与AIDL相兼容。这样使得产品可以与AIDL相兼容。

【技术实现步骤摘要】
一种兼容同名AIDL的方法、装置及计算机程序产品


[0001]本专利技术涉及应用软件
,具体涉及一种兼容同名安卓接口定义语言(android interface definition language,AIDL)的方法、装置及计算机程序产品。

技术介绍

[0002]AIDL是安卓(Android)中一种跨进程通讯方式,它包含文件名、包名、接口类名、若干接口函数,每个接口函数有函数名、参数类型、返回值类型等信息。通常一个安卓的项目会随着产品的发布以迭代的方式不断演进。如果一个安卓项目定义了一个AIDL,并实现了它所定义的接口功能,那么这个AIDL就与承载它的每一代产品具备了绑定的关系。即每一代产品都对应每一代的AIDL,会出现第一代产品对应第一代的AIDL、第二代产品对应第二代的AIDL、第三代产品对应第三代的AIDL
……
已经售卖出去的产品已经被用户广泛使用,无法被回收。由于每一代产品都是从同一项目传承下来的,每一代产品中可能具有相同的文件名、包名、接口类别等。
[0003]安卓对于AIDL有一个先后版本兼容的支持策略。但是该支持策略条件比较苛刻。该支持策略条件包括:AIDL的内容不变,包括函数的顺序、名称、参数数量、参数类型、返回值类型、扇入扇出的方向等都不能变化。若需要在新版本的增加新的内容,只能在原有的内容尾部增加新的接口函数。
[0004]但是随着功能的不同演进。上一代的AIDL的定义可能已经不能满足当前产品的需求。因此可能需要在当前代调整AIDL的接口定义。例如,需要删除无用的接口函数,增加新的接口函数、修改已有的接口函数、调整接口函数顺序等。但是安卓对于AIDL的支持策略不能满足该需求。所以,在售出若干代产品之后,每一代中AIDL的定义以及实现有的相同,有的不同。例如,若要给这些产品在线升级一款应用,而这款应用刚好要使用与该产品相对应的一代AIDL中的一个接口函数,按照安卓对于AIDL的兼容支持策略是无法做到的。

技术实现思路

[0005]本申请提供了一种兼容同名AIDL的方法,该方法包括:获取产品型号;根据所述产品信号获取与所述产品型号对应的目标函数序号;调用与所述目标函数序号对应的安卓接口定义语言AIDL。这样,当售出若干代产品之后,可以根据产品型号获取与产品型号对应的目标函数序号,从而获取到与该产品对应的AIDL,这样使得产品可以与任意代的AIDL相兼容。
[0006]可选的,结合第一方面,所述获取产品型号之前,所述方法还包括:确定函数序号与至少一个AIDL的对应关系,所述函数序号包括所述目标函数序号;所述调用与所述目标函数序号对应的安卓接口定义语言AIDL包括:根据所述对应关系调用与所述目标函数序号对应的AIDL。
[0007]可选的,结合第一方面,所述函数序号被装载于目标数组中,所述调用所述目标函数序号对应的安卓接口定义语言AIDL包括:遍历所述目标数组中的元素;当所述元素为所
述目标函数序号时,调用所述与所述目标函数序号对应的AIDL。
[0008]可选的,结合第一方面,所述调用与所述目标函数序号对应的AIDL包括:传输与所述对应的AIDL相应的参数。
[0009]本申请第二方面提供了一种兼容同名AIDL的装置,其特征在于,所述装置包括:获取模块,用于获取产品型号;处理模块,用于根据所述产品信号获取与所述产品型号对应的目标函数序号;调用模块,用于调用与所述目标函数序号对应的安卓接口定义语言AIDL。
[0010]可选的,结合第二方面,所述处理模块,还用于确定函数序号与至少一个AIDL的对应关系,所述函数序号包括所述目标函数序号;所述调用模块,具体用于根据所述对应关系调用与所述目标函数序号对应的AIDL。
[0011]可选的,结合第二方面,所述函数序号被装载于目标数组中,所述调用模块,具体用于遍历所述目标数组中的元素;所述调用模块,具体用于当所述元素为所述目标函数序号时,调用所述与所述目标函数序号对应的AIDL。
[0012]可选的,结合第二方面,所述调用模块,具体用于传输与所述对应的AIDL相应的参数。
[0013]本申请第三方面提供了一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序或指令,当所述计算机程序或指令在计算机设备上运行时,使得所述计算机设备执行如本申请第一方面至第一方面任意一种可能的实现方式中所述的方法。
[0014]本申请第四方面提供了一种兼容同名AIDL的装置,其特征在于,所述装置包括:处理器和存储器,所述处理器和所述存储器耦合,所述存储器用于存储计算机程序或指令,所述处理器用于执行所述存储器中的计算机程序或指令,以实现如本申请第一方面至第一方面的任意一种可能的实现方式中所述的方法。
[0015]本申请提供了一种兼容同名AIDL的方法,该方法包括:获取产品型号;根据所述产品信号获取与所述产品型号对应的目标函数序号;调用与所述目标函数序号对应的安卓接口定义语言AIDL。这样,当售出若干代产品之后,可以根据产品型号获取与产品型号对应的目标函数序号,从而获取到与该产品对应的AIDL,这样使得产品可以与AIDL相兼容。
附图说明
[0016]图1是本申请提供的一种兼容同名AIDL的方法流程示意图;
[0017]图2为本申请提供的一种预处理的方法流程示意图;
[0018]图3为本申请提供的一种兼容同名AIDL的装置示意图;
[0019]图4为本申请提供的一种兼容同名AIDL的装置示意图。
具体实施方式
[0020]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0021]本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情
况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
[0022]AIDL是安卓中一种跨进程通讯方式,它包含文件名、包名、接口类名、若干接口函数,每个接口函数有函数名、参数类型、返回值类型等信息。通常一个安卓的项目会随着产品的发布以迭代的方式不断演进。如果一个安卓项目定义了一个AIDL,并实现了它所定义的接口功能,那么这个AIDL就与承载它的每一代产品具备了绑定的关系。即每一代产品都对应每一代的AIDL,会出现第一代产品对应第一代的AIDL、第二代产品对应第二代的AIDL、第三代产品对应第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种兼容同名AIDL的方法,其特征在于,所述方法包括:获取产品型号;根据所述产品型号获取与所述产品型号对应的目标函数序号;调用与所述目标函数序号对应的安卓接口定义语言AIDL。2.根据权利要求1所述的方法,其特征在于,所述获取产品型号之前,所述方法还包括:确定函数序号与至少一个AIDL的对应关系,所述函数序号包括所述目标函数序号;所述调用与所述目标函数序号对应的安卓接口定义语言AIDL包括:根据所述对应关系调用与所述目标函数序号对应的AIDL。3.根据权利要求2所述的方法,其特征在于,所述函数序号被装载于目标数组中,所述调用所述目标函数序号对应的安卓接口定义语言AIDL包括:遍历所述目标数组中的元素;当所述元素为所述目标函数序号时,调用所述与所述目标函数序号对应的AIDL。4.根据权利要求1所述的方法,其特征在于,所述调用与所述目标函数序号对应的AIDL包括:传输与所述对应的AIDL相应的参数。5.一种兼容同名AIDL的装置,其特征在于,所述装置包括:获取模块,用于获取产品型号;处理模块,用于根据所述产品型号获取与所述产品型号对应的目标函数序号;调用模块,用于调用与所述目标函...

【专利技术属性】
技术研发人员:张明生周佳
申请(专利权)人:北京珠穆朗玛移动通信有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1