一种协议更新方法、装置及电子设备与流程

文档序号:23806698发布日期:2021-02-03 11:50阅读:87来源:国知局
一种协议更新方法、装置及电子设备与流程

[0001]
本发明涉及通信技术领域,特别是涉及一种协议更新方法、装置及电子设备。


背景技术:

[0002]“智慧城市”是近些年研究的热点,路灯作为“智慧城市”建设的基本,已经越来越引起大家的注意,现在已经有很多城市已经或准备将路灯改造成物联网数据收集站,使其可用于空气质量监测、行人检测、车辆检测等方面。智慧路灯的发展可迅速加快“智慧城市”的建设。智慧路灯特性的开发往往需要实现不同系统之间的对接,系统内部使用一种处理方式,系统与外部对接时需遵循一定的标准,那么就会出现协议解析的问题。
[0003]
通信协议的定义不是一成不变的,协议定义的改变不仅会导致协议解析变化,还会促使接口格式发生变化,从而使得服务使用方的协议解析模块需要更新协议格式并重新处理变化后的接口格式,否则应用可能无法如期运行。
[0004]
传统的协议格式更新,无法主动告知服务使用方有新的协议格式需要更新,同时也无法告知服务使用方由于协议格式的更新导致接口格式发生改变,因此服务使用方无法及时获知接口格式是否发生变化。


技术实现要素:

[0005]
基于此,有必要针对上述技术问题,提供一种协议更新方法、装置及电子设备,不但能够及时获知接口格式是否发生变化,而且能够降低适配的工作量。
[0006]
第一方面,本发明实施例提供了一种协议更新方法,所述方法包括:
[0007]
接收应用程序接口变更通知;
[0008]
根据所述应用程序接口变更通知请求获取应用程序接口变更信息;
[0009]
接收预设特定格式的应用程序接口变更信息和软件更新工具包;
[0010]
解析所述预设特定格式的应用程序接口变更信息以根据所述软件更新工具包升级应用程序。
[0011]
在一些实施例中,所述应用程序接口变更信息包括应用程序接口变更类型和应用程序接口变更内容。
[0012]
在一些实施例中,预先定义特定格式的应用程序接口变更信息,其中,所述特定格式为key-value格式。
[0013]
在一些实施例中,所述解析所述预设特定格式的应用程序接口变更信息以根据所述软件更新工具包升级应用程序,包括:
[0014]
解析所述预设特定格式的应用程序接口变更信息,获得应用程序接口变更类型和应用程序接口变更内容;
[0015]
根据所述应用程序接口变更类型和所述应用程序接口变更内容调整应用程序接口;
[0016]
根据调整后的应用程序接口调用所述软件更新工具包以升级应用程序。
[0017]
在一些实施例中,所述接收应用程序接口变更通知之前,所述方法还包括:
[0018]
获取软件开发工具包和预设特定格式的应用程序接口信息;
[0019]
解析所述预设特定格式的应用程序接口信息以根据所述软件开发工具包开发应用程序。
[0020]
在一些实施例中,所述解析所述预设特定格式的应用程序接口信息以根据所述软件开发工具包开发应用程序,包括:
[0021]
解析所述预设特定格式的应用程序接口信息,获得应用程序接口类型和应用程序接口内容;
[0022]
根据所述应用程序接口类型和应用程序接口内容调用所述软件开发工具包以实现应用程序的开发。
[0023]
在一些实施例中,所述方法还包括:
[0024]
获取预设特定格式的应用程序接口信息和软件开发工具包,并根据所述预设特定格式的应用程序接口信息将所述软件开发工具包集成在应用程序中;或者,
[0025]
获取应用程序接口文档,根据所述应用程序接口文档将所述软件开发工具包集成在应用程序中。
[0026]
第二方面,本发明实施例还提供了一种协议更新装置,所述装置包括:
[0027]
第一接收模块,用于接收应用程序接口变更通知;
[0028]
请求模块,用于根据所述应用程序接口变更通知请求获取应用程序接口变更信息;
[0029]
第二接收模块,用于接收预设特定格式的应用程序接口变更信息和软件更新工具包;
[0030]
解析模块,用于解析所述预设特定格式的应用程序接口变更信息以根据所述软件更新工具包升级应用程序。
[0031]
第三方面,本发明实施例还提供了一种电子设备,包括:
[0032]
至少一个处理器;以及,
[0033]
与所述至少一个处理器通信连接的存储器;其中,
[0034]
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述协议更新方法。
[0035]
第四方面,本发明实施例还提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,当所述计算机可执行指令被处理器所执行时,使所述处理器执行上述协议更新方法。
[0036]
与现有技术相比,本发明的有益效果是:区别于现有技术的情况,本发明实施例中的协议更新方法、装置和电子设备,当应用程序接口发生变化时,发送应用程序接口变更通知给客户端,客户端接收应用程序接口变更通知,并主动向服务端发送获取应用程序接口变更信息的请求,服务端将软件更新数据包,以及与请求对应的应用程序接口变更信息以预设特定格式一并发送给客户端,客户端解析所述预设特定格式的应用程序接口变更信息以根据软件更新数据包升级应用程序,由此能够及时获知接口格式是否发生变化,而且能够降低适配的工作量。
附图说明
[0037]
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
[0038]
图1是本发明一个实施例中协议更新方法的应用环境示意图;
[0039]
图2是本发明一个实施例中协议更新方法的流程图;
[0040]
图3是本发明一个实施例中开发应用程序的流程图;
[0041]
图4是本发明一个实施例中协议更新方法的详细流程图;
[0042]
图5是本发明一个实施例中协议更新装置的结构示意图;
[0043]
图6是本发明一个实施例中电子设备的硬件结构示意图。
具体实施方式
[0044]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045]
需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本发明所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
[0046]
本发明实施例提供的协议更新方法,可以应用于图1所示的应用环境中,该应用环境包括服务端和客户端。图1示例性的示出了服务端10和客户端20,服务端10和客户端20通信连接。其中,服务端10可以为服务提供方,客户端20可以为服务使用方。
[0047]
服务端10对客户端20侧开发某应用程序的功能需求进行调研,服务端10用于提供软件开发工具包以及特定格式的应用程序接口信息给客户端20,以使客户端20完成某应用程序的功能开发;当接口内容发生变化时,即应用程序接口需要更新,服务端10用于提供软件更新工具包以及特定格式的应用程序接口变更信息给客户端20,以使客户端20完成某应用程序的升级。服务端10可以将软件更新工具包以及特定格式的应用程序接口变更信息同时发送给客户端20,也可以将软件更新工具包以及特定格式的应用程序接口变更信息分开发送。
[0048]
需要说明的是,本发明实施例提供的方法还可以进一步的扩展到其他合适的应用环境中,而不限于图1所示的应用环境。在实际的应用过程中,该应用环境还可以包括更多或者更少的服务端10和客户端20。
[0049]
在一种传统技术中,客户端即服务使用方需要主动发现是否有新的协议格式需要更新,若有则下载更新。当前常见的接口发布方式,基本上是以开发者文档的形式供客户端的开发者阅读,开发者可根据接口描述进行应用程序的开发,当服务端即服务提供方的接口定义发生变化时,是无法主动告知服务使用方接口格式已改变,客户端侧只能在开发的应用程序出现解析错误或者无法使用协议支持的新功能时,才能发现是通信协议格式或/
或接口定义的改变导致解析失败,此时,客户端侧的开发者需要更新改变后的通信协议格式,以及更新新的接口定义才能完成应用程序的升级。由于服务端根据新的协议格式定义新的接口后,无法通知客户端,客户端侧需要人工查询网站开发者文档确定是否有接口定义更新。
[0050]
在另一种传统技术中,客户端提供监测模块,用于监测协议格式是否发生变更,若监测到有更新的协议格式,则通知客户端获取新的协议格式文件,客户端接收后使用更新后的协议格式文件对报文进行解析。当客户端更新了协议格式后,同时也会联想到服务端可能也根据新的协议格式更新了接口定义,此时,客户端可立即通过访问网站确认是否有接口定义更新,若有,则根据新的接口定义升级应用程序。由于监测协议格式需要一直查询,导致占用网络带宽;同时服务端是通过发布开发者文档的形式供客户端侧的开发者参考使用,因此服务端根据新的协议格式定义新的接口后,无法通知客户端,客户端侧需要人工查询网站开发者文档确定是否有接口定义更新。
[0051]
在另一种传统技术中,通过服务提供方发布软件开发工具包以及配套的应用程序接口说明,第三方应用程序可通过内置软件开发工具包,并根据应用于程序接口说明调用软件开发工具包中的功能,当服务提供方的软件开发工具包有更新时,通知第三方应用程序,第三方应用程序下载更新软件开发工具包,并根据新的配套应用程序接口说明完成应用程序的开发。由于软件开发工具包更新是以整包的形式更新,即使是局部更新,第三方应用程序也不知道具体更新了哪些内容,需要人工适配,增加了第三方应用程序开发者适配的工作量。
[0052]
针对上述问题,本发明实施例结合附图提供了如下技术方案。
[0053]
如图2所示,本发明实施例提供了一种协议更新方法,所述方法由客户端执行,所述方法包括:
[0054]
步骤202,接收应用程序接口变更通知。
[0055]
当应用程序接口内容变化时,服务端会给客户端发送应用程序接口变更通知,客户端接收服务端发送的应用程序接口变更通知,由此能够及时获知应用程序接口是否发生变化。
[0056]
步骤204,根据所述应用程序接口变更通知请求获取应用程序接口变更信息。
[0057]
在本发明实施例中,应用程序接口变更信息包括应用程序接口变更类型和应用程序接口变更内容。其中,应用程序接口变更内容可以是类名、方法名、应用程序接口名(api)、功能名、字段名等可唯一或组合标识出特定应用程序接口的信息,例如可通过类名和方法名唯一确定一个接口,则该变更内容为“类名和方法名”,再例如可通过接口名即可唯一确定一个接口,则该变更内容为“接口名”。所述应用程序接口变更类型可以为0-不变更、1-新增、2-删除以及3-修改等,此外,所述应用程序接口变更类型也可以为3-不变更、2-新增、1-删除以及0-修改等,此处仅仅为举例说明,并不作为对此的限定。
[0058]
具体地,当客户端接收到应用程序接口变更通知后,根据所述变更通知主动向服务端发送获取变更后的应用程序接口变更类型和应用程序接口变更内容的请求。
[0059]
步骤206,接收预设特定格式的应用程序接口变更信息和软件更新工具包。
[0060]
在本发明实施例中,预先定义特定格式的应用程序接口变更信息,其中,预设特定格式为key-value格式,所述key-value格式中定义了应用程序接口变更类型和应用程序接
口变更内容,用于规范应用程序接口定义的输出,保证服务端应用程序接口变更格式的一致性。其中,key-value格式例如可以为:
[0061][0062]
key-value格式例如还可以为:
[0063][0064][0065]
具体地,当服务端接收到客户端发送的获取应用程序接口变更信息即应用程序接口变更类型和应用程序接口变更内容的请求后,服务端将软件更新工具包,以及与所述请求对应的应用程序接口变更类型和应用程序接口变更内容以预设特定格式即key-value格式,一并返回给客户端。变更信息包括变更类型和变更内容,其中,变更内容在以下示例中为:类名和api名,即可以通过类名和api名(接口名)唯一确定一个接口。示例性的,服务端返回预设特定格式的应用程序接口变更信息如下:
[0066][0067]
客户端接收预设特定格式的应用程序接口变更信息和软件更新工具包。
[0068]
步骤208,解析所述预设特定格式的应用程序接口变更信息以根据所述软件更新工具包升级应用程序。
[0069]
具体地,客户端具备解析特定格式即key-value格式的能力,因此,当客户端接收到服务端发送的预设特定格式的应用程序接口变更信息和软件更新工具包后,解析所述预设特定格式的应用程序接口变更信息,获得更新后的应用程序接口变更类型和应用程序接口变更内容。接着根据所述更新后的应用程序接口变更类型和应用程序接口变更内容调整应用程序接口,并根据调整后的应用程序接口调用所述软件更新数据包以升级应用程序,由此能够降低适配的工作量。
[0070]
在本发明实施例中,当应用程序接口发生变化时,发送应用程序接口变更通知给客户端,客户端接收应用程序接口变更通知,并主动向服务端发送获取应用程序接口变更信息的请求,服务端将软件更新数据包,以及与请求对应的应用程序接口变更信息以预设特定格式一并发送给客户端,客户端解析所述预设特定格式的应用程序接口变更信息以根据软件更新数据包升级应用程序,由此能够及时获知接口格式是否发生变化,而且能够降低适配的工作量。
[0071]
可以理解的是,在其他一些实施例中,软件更新数据包,以及与请求对应的应用程序接口变更信息可以分开发送给客户端。即当服务端接收到客户端获取应用程序接口变更信息的请求时,可以先将应用程序接口变更信息以预设特定格式发送给客户端,当再次接收到客户端获取软件更新工具包的请求后,服务端可以根据应用程序接口变更信息将所需更新内容的更新工具包进行下载,然后再则将软件更新工具包发送给客户端。
[0072]
在一些实施例中,如图3所示,所述接收应用程序接口变更通知之前,所述方法还包括:
[0073]
步骤302,获取软件开发工具包和预设特定格式的应用程序接口信息
[0074]
步骤304,解析所述预设特定格式的应用程序接口信息以根据所述软件开发工具包开发应用程序。
[0075]
在本发明实施例中,应用程序接口信息包括应用程序接口类型和应用程序接口内
容,预设特定格式为key-value格式。当客户端侧需要使用服务端发布的接口来开发一款应用程序时,获取服务端发布的软件开发工具包以及预设特定格式的应用程序接口信息即应用程序接口类型和应用程序接口内容。
[0076]
其中,所述软件开发工具包包括协议解析模块和服务功能实现模块。客户端侧通过协议解析模块解析所述预设特定格式的应用程序接口信息,获得应用程序接口类型和应用程序接口内容,接着通过所述应用程序接口类型和应用程序接口内容调用所述软件开发工具包中的服务功能实现模块以实现应用程序的开发。需要说明的是,在本发明实施例可中,服务端是首次发布软件开发工具包以及预设特定格式的应用程序接口信息,所以不存在更新的问题。
[0077]
在一些实施例中,当客户端调用所述软件开发工具包以实现应用程序的开发之前,还需将软件开发工具包集成于待开发的应用程序中。具体可以通过以下两种方式集成。
[0078]
客户端获取预设特定格式的应用程序接口信息和软件开发工具包,并根据所述预设特定格式的应用程序接口信息将所述软件开发工具包集成在应用程序中,由于是首次集成,应用程序接口类型固定为“新增”。或者客户端不用服务端提供的应用程序接口信息,而是获取应用程序接口文档,根据所述应用程序接口文档自行开发,将所述软件开发工具包集成在应用程序中。通过上述任一方式集成皆可,本发明对此不做限定。
[0079]
便于理解本发明,下面将进行具体说明:
[0080]
如图4所示,首先服务端预先定义特定格式的应用程序接口信息,接着发布特定格式的应用程序接口信息和软件开发工具包,客户端获取预设特定格式的应用程序接口信息和软件开发工具包,并根据所述预设特定格式的应用程序接口信息将所述软件开发工具包集成在应用程序中,由于是首次集成,应用程序接口类型固定为“新增”。或者客户端不用服务端提供的应用程序接口信息,而是获取应用程序接口文档,根据所述应用程序接口文档自行开发,将所述软件开发工具包集成在应用程序中。
[0081]
接着,客户端通过软件开发工具包中的协议解析模块解析所述预设特定格式的应用程序接口信息,获得应用程序接口类型和应用程序接口内容,接着通过所述应用程序接口类型和应用程序接口内容调用所述软件开发工具包中的服务功能实现模块以实现应用程序的开发。
[0082]
进一步地,当服务端侧的软件开发工具包需要更新,会导致应用程序接口发生改变。因此,服务端发送应用程序接口变更通知给客户端,由此能使得客户端及时获知应用程序接口是否发生变化。当客户端接收到应用程序接口变更通知后,根据所述变更通知主动向服务端发送获取变更后的应用程序接口变更类型和应用程序接口变更内容的请求。
[0083]
当服务端接收到客户端发送的获取应用程序接口变更信息即应用程序接口变更类型和应用程序接口变更内容的请求后,服务端将软件更新工具包,以及与所述请求对应的应用程序接口变更类型和应用程序接口变更内容以预设特定格式即key-value格式,一并返回给客户端。
[0084]
可以理解的是,当服务端接收到客户端获取应用程序接口变更信息的请求时,将应用程序接口变更信息以预设特定格式发送给客户端,当再次接收到客户端获取软件更新工具包的请求后,服务端可以根据应用程序接口变更信息将所需更新内容的更新工具包进行下载,然后再则将软件更新工具包发送给客户端。
[0085]
当客户端接收到服务端发送的预设特定格式的应用程序接口变更信息和软件更新工具包后,客户端具备解析特定格式即key-value格式的能力,由此能够解析所述预设特定格式的应用程序接口变更信息,获得更新后的应用程序接口变更类型和应用程序接口变更内容。接着根据所述更新后的应用程序接口变更类型和应用程序接口变更内容调整应用程序接口,并根据调整后的应用程序接口调用所述软件更新数据包以升级应用程序,由此能够降低适配的工作量。
[0086]
下面将进行举例说明:
[0087]
本实施例以客户端侧即服务使用方准备使用服务端发布的接口来开发一款用于安装路灯的智慧路灯应用程序为例来陈述本发明,该智慧路灯应用程序需支持定位功能和获取温度传感器信息的能力。
[0088]
本实施例为智慧路灯应用程序首次集成服务端提供的软件开发工具包,并通过服务端发布的应用程序接口信息来调用软件开发工具包的功能,智慧路灯应用程序需要调用的应用程序接口信息包括:
[0089]
1、定位api,maplocationoption getlocation(),该方法隶属于类map
[0090]
2、获取温度传感器信息api,float gettempsensor(int sensorid),该方法隶属于类sensor
[0091]
3、举报车辆api,void tocarcomplain(int carid),该方法隶属于类control
[0092]
由于智慧路灯应用程序为首次集成,需获取服务端提供的预设特定格式的应用程序接口信息,预设特定格式的应用程序接口信息定义了应用程序接口内容和应用程序接口类型如下:
[0093]
{
[0094]
map:{//定义key1的内容为:类名——map,value1为下述结构体getlocation:1,//定义api名——getlocation,变更类型为新增}
[0095]
sensor:{//定义key2的内容为:类名——sensor,value2为下述结构体gettempsensor:1,//定义api名——gettempsensor,变更类型为新增}
[0096]
control:{//定义key3的内容为:类名——control,value3为下述结构体tocarcomplain:1,//定义api名——tocarcomplain,变更类型为新增}
[0097]
}
[0098]
如上所示,由于是首次集成,应用程序接口类型均为新增,即智慧路灯应用程序需要新增3个应用程序接口以实现智慧路灯功能的调用。
[0099]
当智慧路灯应用程序集成了3个应用程序接口后,对预设特定格式的应用程序接口信息即key-value格式的应用程序接口信息进行解析,得到更新后的应用程序接口类型和应用程序接口内容,由于是发布后的首次解析,其应用程序接口均为新增,因此根据应用程序接口内容和应用程序接口类型,快速定位api即应用程序接口信息,以实现对智慧路灯服务端提供的相应服务进行调用,协助快速开发应用程序。
[0100]
以api——gettempsensor举例:
[0101]
客户端侧解析得到sensor类下的api——gettempsensor在本次发布过程中为新增功能,因此可根据服务端配套发布的软件开发工具包(已实现了gettempsensor功能,并在开发指南中公开应用程序接口信息)和开发指南,快速找到实现sensor类下的相关api,
通过api调用软件开发工具包中的gettempsensor功能。
[0102]
进一步地,当服务端提供的软件开发工具包有所更新,客户端需重新获取更新后的软件升级工具包以及应用程序接口变更信息。
[0103]
具体地,当服务端提供的软件开发工具包更新为软件更新工具包后,必然会导致调用软件开发工具包的应用程序接口信息更新为应用程序接口变更信息。即当服务端存储的软件开发工具包更新为软件更新工具包后,会触发应用程序接口变更通知。服务端更新的相关应用程序接口变更信息包括:
[0104]
1、定位api,maplocationoption getlocation(int ilocationmode),该方法隶属于类map,本次该api有所修改,其增加了一个传入参数,用以表示定位模式是选择高精度定位ilocationmode:0还是低精度定位ilocationmode:1。
[0105]
2、获取温度传感器数据api,float gettempsensor(int sensorid),该方法隶属于类sensor,本次更新保持不变。
[0106]
3、获取枪声探测数据api,float getsoundsensor(int sensorid),该方法隶属于类sensor,本次更新为新增api。
[0107]
4、举报用户api,void tocarcomplain(int carid),该方法隶属于类control,本次更新为删除该api。
[0108]
当服务端更新软件开发工具包时,会向客户端发送应用程序接口变更通知,客户端接收到所述变更通知后,主动向服务端请求变更后的应用程序接口变更信息,由于服务端预先定义了应用程序接口变更信息的变更格式,当服务端接收到客户端发送的请求后,将应用程序接口变更信息封装为key-value格式连同软件更新工具包一并发送给客户端,如下:
[0109]
{
[0110]
map:{//定义key1的内容为:类名——map,value1为下述结构体getlocation:3,//定义api名——getlocation,变更类型为修改}
[0111]
sensor:{//定义key2的内容为:类名——sensor,value2为下述结构体gettempsensor:0,//定义api名——gettempsensor,变更类型为不变更
[0112]
getsoundsensor:1,//定义api名——getsensoraddress,变更类型为新增}
[0113]
control:{//定义key3的内容为:类名——control,value3为下述结构体tocarcomplain:2,//定义api名——tocarcomplain,变更类型为删除}
[0114]
}
[0115]
可以理解的是,当服务端接收到客户端获取应用程序接口变更信息的请求时,可以先将应用程序接口变更信息以预设特定格式发送给客户端,当再次接收到客户端获取软件更新工具包的请求后,服务端可以根据应用程序接口变更信息将所需更新内容的更新工具包进行下载,然后再则将软件更新工具包发送给客户端。
[0116]
客户端接收服务端发送的预设特定格式的应用程序接口变更信息和软件更新工具包,解析预设特定格式的应用程序接口变更信息得到:
[0117]

本次新增一个api——getsoundsensor,客户端可快速定位类sensor下新增的该api,可在智慧路灯应用程序中新增api调用服务端提供的获取枪声探测数据的功能;
[0118]

本次删除一个api——tocarcomplain,智慧路灯应用程序已集成更新了软件更
新工具包,原实现tocarcomplain(投诉)功能的相关api接口继续调用可能会导致失败报错,智慧路灯应用程序开发者可快速定位实现该投诉功能的相关api,调整应用接口;
[0119]

本次修改一个api——getlocation,智慧路灯应用程序开发者可根据服务端更新的软件更新工具包(已修改了该api中的传入参数,bool getlocation(int ilocationmode),并在开发指南中公开应用程序接口变更信息)和开发指南,快速调整其参数个数(新增一个int类入参),并同时调整后续开发动作(例如传入一个定位模式——0表示高精度定位以调用服务端高精度定位功能),从而完成智慧路灯应用程序的升级。
[0120]
相应的,本发明实施例提供了一种协议更新装置500,如图5所示,包括:
[0121]
第一接收模块502,用于接收应用程序接口变更通知;
[0122]
请求模块504,用于根据所述应用程序接口变更通知请求获取应用程序接口变更信息;
[0123]
第二接收模块506,用于接收预设特定格式的应用程序接口变更信息和软件更新工具包;
[0124]
解析模块508,用于解析所述预设特定格式的应用程序接口变更信息以根据所述软件更新工具包升级应用程序。
[0125]
本发明实施例提供的协议更新装置,通过第一接收模块接收应用程序接口变更通知,接着根据所述应用程序接口变更通知使用请求模块请求获取应用程序接口变更信息,然后通过第二接收模块接收预设特定格式的应用程序接口变更信息和软件更新工具包,最后通过解析模块解析所述预设特定格式的应用程序接口变更信息以根据所述软件更新工具包升级应用程序,由此能够及时获知接口格式是否发生变化,而且能够降低适配的工作量。
[0126]
可选的,在装置的其他实施例中,所述应用程序接口变更信息包括应用程序接口变更类型和应用程序接口变更内容。
[0127]
可选的,在装置的其他实施例中,请参照图5,装置500包括:
[0128]
定义模块510,用于预先定义特定格式的应用程序接口变更信息,其中,所述特定格式为key-value格式。
[0129]
可选的,在装置的其他实施例中,解析模块508具体用于:
[0130]
解析所述预设特定格式的应用程序接口变更信息,获得应用程序接口变更类型和应用程序接口变更内容;
[0131]
根据所述应用程序接口变更类型和所述应用程序接口变更内容调整应用程序接口;
[0132]
根据调整后的应用程序接口调用所述软件更新工具包以升级应用程序。
[0133]
解析所述预设特定格式的应用程序接口信息以根据所述软件开发工具包开发应用程序。
[0134]
解析所述预设特定格式的应用程序接口信息,获得应用程序接口类型和应用程序接口内容;
[0135]
根据所述应用程序接口类型和应用程序接口内容调用所述软件开发工具包以实现应用程序的开发。
[0136]
可选的,在装置的其他实施例中,第二接收模块506具体用于:
[0137]
获取软件开发工具包和预设特定格式的应用程序接口信息。
[0138]
获取预设特定格式的应用程序接口信息和软件开发工具包,并根据所述预设特定格式的应用程序接口信息将所述软件开发工具包集成在应用程序中;或者,
[0139]
获取应用程序接口文档,根据所述应用程序接口文档将所述软件开发工具包集成在应用程序中。
[0140]
需要说明的是,上述协议更新装置可执行本发明实施例所提供的协议更新方法,具备执行方法相应的功能模块和有益效果。未在协议更新装置实施例中详尽描述的技术细节,可参见本发明实施例所提供的协议解析方法。
[0141]
图6是本发明实施例提供的电子设备的硬件结构示意图,如图6所示,该电子设备600包括:
[0142]
一个或多个处理器602以及存储器604,图6中以一个处理器602为例。
[0143]
处理器602和存储器604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
[0144]
存储器604作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的协议更新方法对应的程序指令/模块(例如,附图5所示的第一接收模块502、请求模块504、第二接收模块506、解析模块508以及定义模块510)。处理器602通过运行存储在存储器604中的非易失性软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例的协议更新方法。
[0145]
存储器604可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据协议更新装置使用所创建的数据等。此外,存储器604可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器604可选包括相对于处理器602远程设置的存储器,这些远程存储器可以通过网络连接至协议更新装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0146]
所述一个或者多个模块存储在所述存储器604中,当被所述一个或者多个电子设备执行时,执行上述任意方法实施例中的协议更新方法,例如,执行以上描述的图2中的方法步骤202至步骤208,图3中的方法步骤302至步骤304;实现图5中的模块502至510的功能。
[0147]
本发明实施例还提供了一种计算机程序产品,包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时时,使所述计算机执行:图2中的方法步骤202至步骤208,图3中的方法步骤302至步骤304。
[0148]
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本发明实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
[0149]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0150]
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式
可借助程序加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
[0151]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1