更新数据包的获取、应用程序组件的更新方法及装置与流程

文档序号:14574539发布日期:2018-06-02 01:10阅读:207来源:国知局
更新数据包的获取、应用程序组件的更新方法及装置与流程

本发明涉及计算机领域,具体而言,涉及一种更新数据包的获取、应用程序组件的更新方法及装置。



背景技术:

由于互联网业务迭代速度较快,业务模块较多,因此,客户端频繁更新会极大地影响用户体验。如果客户端存在的故障和新功能的发布都需要等待客户端的新版本发布,那么会造成故障修复和功能发布滞后,从而失去大量用户,丧失占领市场的先机。并且,如果同一个公司先后研发了多款不同类型客户端,那么在进行更新维护的过程中,需要分别针对不同类型客户端重复开发相同或相类似的更新功能,由此造成开发资源的巨大浪费。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明其中一实施例提供了一种更新数据包的获取、应用程序组件的更新方法及装置,以至少解决相关技术中在无法进行客户端整体升级的情况下,如何对客户端部分功能进行修复或更新的技术问题。

根据本发明其中一实施例,提供了一种更新数据包的获取方法,包括:

接收来自于终端的属性信息,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;根据属性信息获取与应用程序内一个或多个功能组件对应的待更新数据包;将待更新数据包发送至终端。

可选地,根据属性信息获取待更新数据包包括:获取服务器当前存储的配置信息,其中,配置信息用于记录待发布的应用程序组件更新内容;按照属性信息从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

可选地,按照属性信息从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包包括:从属性信息中获取应用程序的标识信息,应用程序的版本号以及应用程序的下载渠道;采用标识信息、版本号以及下载渠道从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

根据本发明其中一实施例,还提供了一种应用程序组件的更新方法,包括:

将属性信息发送至服务器,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;从服务器获取待更新数据包,其中,待更新数据包用于对应用程序内一个或多个功能组件进行更新,一个或多个功能组件由服务器根据属性信息来确定;采用待更新数据包对一个或多个功能组件进行更新。

可选地,从服务器获取待更新数据包包括:接收来自于服务器的引导信息,其中,引导信息用于辅助终端确定在服务器上存储的可供应用程序进行组件更新的更新数据;从属性信息中获取应用程序内各个功能组件的本地版本号;将应用程序内各个功能组件的本地版本号与引导信息中对应的版本号进行比对,得到比对结果;按照比对结果从服务器获取待更新数据包。

根据本发明其中一实施例,还提供了一种更新数据包的获取装置,包括:

接收模块,用于接收来自于终端的属性信息,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;获取模块,用于根据属性信息获取与应用程序内一个或多个功能组件对应的待更新数据包;发送模块,用于将待更新数据包发送至终端。

可选地,获取模块包括:第一获取单元,用于获取服务器当前存储的配置信息,其中,配置信息用于记录待发布的应用程序组件更新内容;第二获取单元,用于根据属性信息从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

可选地,第二获取单元包括:获取子单元,用于从属性信息中获取应用程序的标识信息,应用程序的版本号以及应用程序的下载渠道;生成子单元,用于采用标识信息、版本号以及下载渠道从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

根据本发明其中一实施例,还提供了一种应用程序组件的更新装置,包括:

发送模块,用于将属性信息发送至服务器,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;获取模块,用于从服务器获取待更新数据包,其中,待更新数据包用于对应用程序内一个或多个功能组件进行更新,一个或多个功能组件由服务器根据属性信息来确定;更新模块,用于采用待更新数据包对一个或多个功能组件进行更新。

可选地,获取模块包括:接收单元,用于接收来自于服务器的引导信息,其中,引导信息用于辅助终端确定在服务器上存储的可供应用程序进行组件更新的更新数据;第一获取单元,用于从属性信息中获取应用程序内各个功能组件的本地版本号;比较单元,用于将应用程序内各个功能组件的本地版本号与引导信息中对应的版本号进行比对,得到比对结果;第二获取单元,用于按照比对结果从服务器获取待更新数据包。

根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述更新数据包的获取方法或上述应用程序组件的更新方法。

根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述更新数据包的获取方法或上述应用程序组件的更新方法。

根据本发明其中一实施例,还提供了一种应用程序组件的更新系统,包括:终端和服务器,其中,服务器用于执行上述更新数据包的获取方法,终端用于执行上述应用程序组件的更新方法。

在本发明至少部分实施例中,采用接收来自于终端的属性信息,该属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息的方式,根据属性信息获取与应用程序内一个或多个功能组件对应的待更新数据包并将待更新数据包发送至终端,达到了对应用程序客户端部分功能进行修复或更新的目的,从而实现了操作简便、通用性强的技术效果,进而解决了相关技术中在无法进行客户端整体升级的情况下,如何对客户端部分功能进行修复或更新的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明其中一实施例的更新数据包的获取方法的流程图;

图2是根据本发明其中一实施例的应用程序组件的更新方法的流程图;

图3是根据本发明其中一实施例的应用程序组件的更新系统的结构示意图;

图4是根据本发明其中一实施例的更新数据包的获取装置的结构框图;

图5是根据本发明其中一实施例的应用程序组件的更新装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明其中一实施例,提供了一种更新数据包的获取方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明其中一实施例的更新数据包的获取方法的流程图,如图1所示,该方法包括如下步骤:

步骤S12,接收来自于终端的属性信息,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;

步骤S14,根据属性信息获取与应用程序内一个或多个功能组件对应的待更新数据包;

步骤S16,将待更新数据包发送至终端。

通过上述步骤,可以采用接收来自于终端的属性信息,该属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息的方式,根据属性信息获取与应用程序内一个或多个功能组件对应的待更新数据包并将待更新数据包发送至终端,达到了对应用程序客户端部分功能进行修复或更新的目的,从而实现了操作简便、通用性强的技术效果,进而解决了相关技术中在无法进行客户端整体升级的情况下,如何对客户端部分功能进行修复或更新的技术问题。

上述属性信息通常可以包括但不限于以下几类信息:

(1)应用程序客户端的标识信息,例如:去哪儿应用程序(APP),携程APP;

(2)应用程序版本号,例如:去哪儿APP的版本号;

(3)应用程序下载渠道,例如:从官网下载,从应用宝手机助手下载;

(4)应用程序客户端的各个功能组件的版本号,例如:去哪儿APP下机票预订功能组件的版本号,去哪儿APP下火车票预订功能组件的版本号,去哪儿APP下酒店预订功能组件的版本号;

(5)各个功能组件之间的依赖关系,例如:去哪儿APP下机票预订功能组件与公共组件(例如:网络请求、图片缓存与加载)之间的依赖关系。

可选地,在步骤S14中,根据属性信息获取待更新数据包可以包括以下执行步骤:

步骤S141,获取服务器当前存储的配置信息,其中,配置信息用于记录待发布的应用程序组件更新内容;

步骤S142,按照属性信息从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

在联网状态下,终端会预先将上述应用程序客户端的标识信息,应用程序版本号,应用程序下载渠道,应用程序客户端的各个功能组件的版本号以及各个功能组件之间的依赖关系等属性信息发送至服务器。在服务器上也会定时对终端上安装的每个应用程序客户端的部分或全部功能组件的配置内容进行更新(包括:发布新功能、现有功能的技术缺陷补丁),得到上述配置信息。采用属性信息可以从配置信息中确定需要对应用程序客户端上哪些功能组件进行更新,进而生成待更新数据包。

可选地,在步骤S142中,按照属性信息从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包可以包括以下执行步骤:

步骤S1421,从属性信息中获取应用程序的标识信息,应用程序的版本号以及应用程序的下载渠道;

步骤S1422,采用标识信息、版本号以及下载渠道从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

在终端将上述应用程序客户端的标识信息,应用程序版本号,应用程序下载渠道,应用程序客户端的各个功能组件的版本号以及各个功能组件之间的依赖关系等属性信息发送至服务器之后,服务器需要采用标识信息、版本号以及下载渠道从配置信息中提取与一个或多个功能组件对应的更新内容,进而生成待更新数据包。

例如:终端向服务器发送的标识信息是去哪儿APP,其应用程序版本号为V8.0.0,应用程序下载渠道为通过华为应用市场下载。为此,服务器需要根据终端发送的属性信息从配置信息中查找同时符合上述条件的去哪儿APP中待更新的部分或全部功能组件,进而生成待更新数据包。

图2是根据本发明其中一实施例的应用程序组件的更新方法的流程图,如图2所示,该方法包括如下步骤:

步骤S22,将属性信息发送至服务器,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;

步骤S24,从服务器获取待更新数据包,其中,待更新数据包用于对应用程序内一个或多个功能组件进行更新,一个或多个功能组件由服务器根据属性信息来确定;

步骤S26,采用待更新数据包对一个或多个功能组件进行更新。

上述属性信息通常可以包括但不限于以下几类信息:

(1)应用程序客户端的标识信息,例如:去哪儿APP,携程APP;

(2)应用程序版本号,例如:去哪儿APP的版本号;

(3)应用程序下载渠道,例如:从官网下载,从应用宝手机助手下载;

(4)应用程序客户端的各个功能组件的版本号,例如:去哪儿APP下机票预订功能组件的版本号,去哪儿APP下火车票预订功能组件的版本号,去哪儿APP下酒店预订功能组件的版本号;

(5)各个功能组件之间的依赖关系,例如:去哪儿APP下机票预订功能组件与公共组件(例如:网络请求、图片缓存与加载)之间的依赖关系。

可选地,在步骤S24中,从服务器获取待更新数据包可以包括以下执行步骤:

步骤S241,接收来自于服务器的引导信息,其中,引导信息用于辅助终端确定在服务器上存储的可供应用程序进行组件更新的更新数据;

步骤S242,从属性信息中获取应用程序内各个功能组件的本地版本号;

步骤S243,将应用程序内各个功能组件的本地版本号与引导信息中对应的版本号进行比对,得到比对结果;

步骤S244,按照比对结果从服务器获取待更新数据包。

上述引导信息可以是服务器向终端发送的待更新应用程序客户端功能组件列表。而终端本地也会存储一份对应的本地应用程序客户端各功能组件在终端本地的最新版本以及相互间的依赖关系的列表。如果终端根据依赖关系确定部分组件之间存储依赖关系,那么还需要对这部分组件进行同步更新;否则,如果仅单独更新其中一个组件,则会导致更新失败。另外,终端用户不会感知到各个功能组件的自动更新。应用程序客户端的版本号也不会因为功能组件的版本更新而立即发生改变。

终端通过将本地存储的列表与服务器下发的列表进行比对,如果发现哪些功能组件的版本号低于服务器最新配置的版本号,则确定需要对这些功能组件进行更新。然后,终端会据此向服务器获取与需要进行更新的功能组件对应的待更新数据包。

例如:在终端本地存储的列表中机票预订功能组件的版本号为V1.0,火车票预订功能组件的版本号为V1.0,酒店预订功能组件的版本号为V1.0,公共组件的版本号为V1.0,并且机票预订功能组件、火车票预订功能组件以及酒店预订功能组件与公共组件均存在依赖关系。另外,在服务器下发的列表中机票预订功能组件的版本号为V2.0,火车票预订功能组件的版本号为V1.0,酒店预订功能组件的版本号为V1.0,公共组件的版本号为V2.0,并且机票预订功能组件、火车票预订功能组件以及酒店预订功能组件与公共组件均存在依赖关系。终端通过将本地存储的列表与服务器下发的列表进行比对,发现机票预订功能组件和公共组件需要进行同步更新。为此,终端需要从服务器获取机票预订功能组件和公共组件的待更新数据包。

图3是根据本发明其中一实施例的应用程序组件的更新系统的结构示意图。如图3所示,该系统包括:终端1和服务器2。该系统为通用于各种组件化开发的客户端的框架,可以集成到各种类型APP中,并在用户无法感知的情况下完成各个安卓应用的更新。该系统可以包括以下操作流程:

首先,在联网状态下,终端会预先将上述应用程序客户端的标识信息,应用程序版本号,应用程序下载渠道,应用程序客户端的各个功能组件的版本号以及各个功能组件之间的依赖关系等属性信息发送至服务器。在服务器上也会定时对终端上安装的每个应用程序客户端的部分或全部功能组件的配置内容进行更新,以得到配置信息。

其次,在终端将上述应用程序客户端的标识信息,应用程序版本号,应用程序下载渠道,应用程序客户端的各个功能组件的版本号以及各个功能组件之间的依赖关系等属性信息发送至服务器之后,服务器便可以采用标识信息、版本号以及下载渠道从配置信息中提取同时与标识信息、版本号以及下载渠道相匹配的一个或多个功能组件对应的更新内容,进而生成待更新数据包。

然后,服务器会向终端发送的待更新组件列表。而终端本地也会存储一份对应的本地应用程序客户端各功能组件在终端本地的最新版本以及相互间的依赖关系的列表。终端通过将本地存储的列表与服务器下发的列表进行比对,如果发现哪些功能组件的版本号低于服务器最新配置的版本号,则确定需要对这些功能组件进行更新。

最后,终端会据此向服务器获取与需要进行更新的功能组件对应的待更新数据包,进而采用待更新数据包对本地应用程序客户端上需要更新的部分或全部组件进行更新。

根据本发明其中一实施例,提供了一种更新数据包的获取装置的实施例。图4是根据本发明其中一实施例的更新数据包的获取装置的结构框图,如图4所示,该装置包括:接收模块10,用于接收来自于终端的属性信息,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;获取模块20,用于根据属性信息获取与应用程序内一个或多个功能组件对应的待更新数据包;发送模块30,用于将待更新数据包发送至终端。

可选地,获取模块20包括:第一获取单元(图中未示出),用于获取服务器当前存储的配置信息,其中,配置信息用于记录待发布的应用程序组件更新内容;第二获取单元(图中未示出),用于根据属性信息从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

可选地,第二获取单元(图中未示出)包括:获取子单元(图中未示出),用于从属性信息中获取应用程序的标识信息,应用程序的版本号以及应用程序的下载渠道;生成子单元(图中未示出),用于采用标识信息、版本号以及下载渠道从配置信息中提取与一个或多个功能组件对应的更新内容,生成待更新数据包。

根据本发明其中一实施例,提供了一种应用程序组件的更新装置的实施例。图5是根据本发明其中一实施例的应用程序组件的更新装置的结构框图,如图5所示,发送模块40,用于将属性信息发送至服务器,其中,属性信息用于描述与终端本地安装的应用程序内各个功能组件在更新过程中所需使用的关联信息;获取模块50,用于从服务器获取待更新数据包,其中,待更新数据包用于对应用程序内一个或多个功能组件进行更新,一个或多个功能组件由服务器根据属性信息来确定;更新模块60,用于采用待更新数据包对一个或多个功能组件进行更新。

可选地,获取模块50包括:接收单元(图中未示出),用于接收来自于服务器的引导信息,其中,引导信息用于辅助终端确定在服务器上存储的可供应用程序进行组件更新的更新数据;第一获取单元(图中未示出),用于从属性信息中获取应用程序内各个功能组件的本地版本号;比较单元(图中未示出),用于将应用程序内各个功能组件的本地版本号与引导信息中对应的版本号进行比对,得到比对结果;第二获取单元(图中未示出),用于按照比对结果从服务器获取待更新数据包。

根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述更新数据包的获取方法或上述应用程序组件的更新方法。上述存储介质可以包括但不限于:U盘、只读存储器(ROM)、随机存取存储器(RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述更新数据包的获取方法或上述应用程序组件的更新方法。上述处理器可以包括但不限于:微处理器(MCU)或可编程逻辑器件(FPGA)等的处理装置。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1