首页 / 专利库 / 软件 / 软件 / 应用软件更新方法和装置

应用软件更新方法和装置

阅读:580发布:2021-06-08

专利汇可以提供应用软件更新方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种应用 软件 更新方法,该方法包括:根据 服务器 发送的更新配置文件对本地安装的 应用软件 进行更新检测,获取所述应用软件需更新的各模 块 ;根据所述应用软件需更新的各模块,下载对应的各更新文件包;根据所述各更新文件包,更新所述应用软件。本发明还公开了一种应用软件更新装置。本发明实现了根据模块化的更新文件包对应用软件进行部分更新,降低了应用软件的版本更新 迭代 成本,仅通过模块的更新即可实现新功能的增加或是已有功能的维护,极大地提升了用户体验。,下面是应用软件更新方法和装置专利的具体信息内容。

1.一种应用软件更新方法,其特征在于,所述应用软件更新方法包括以下步骤:
根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模
根据所述应用软件需更新的各模块,下载对应的各更新文件包;
根据所述各更新文件包,更新所述应用软件。
2.如权利要求1所述的应用软件更新方法,其特征在于,在检测到所述应用软件启动时,根据所述各更新文件包,更新所述应用软件。
3.如权利要求1所述的应用软件更新方法,其特征在于,所述根据所述各更新文件包,更新所述应用软件的步骤之前还包括:
存储所述应用软件更新前各模块的原始文件包;
所述根据所述各更新文件包,更新所述应用软件的步骤之后,还包括:
若所述应用软件更新失败,则根据所述原始文件包,控制所述应用软件回滚至更新前的版本。
4.如权利要求1、2或3所述的应用软件更新方法,其特征在于,所述根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块的步骤包括:
基于本地安装的应用软件向服务器发送更新请求,获取所述服务器返回的更新配置文件;
根据所述更新配置文件记载的所述应用软件各模块的更新版本信息,以及所述应用软件本地安装的各模块版本信息,检测所述应用软件是否需要更新模块;
获取所述应用软件需更新的各模块。
5.如权利要求4所述的应用软件更新方法,其特征在于,所述根据所述应用软件需更新的各模块,下载对应的各更新文件包的步骤包括:
根据所述更新配置文件,获取所述应用软件需更新的各模块的更新文件包下载地址;
根据所述应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包。
6.一种应用软件更新装置,其特征在于,所述应用软件更新装置包括:
检测模块,用于根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块;
下载模块,用于根据所述应用软件需更新的各模块,下载对应的各更新文件包;
更新模块,用于根据所述各更新文件包,更新所述应用软件。
7.如权利要求6所述的应用软件更新装置,其特征在于,所述更新模块还用于,在检测到所述应用软件启动时,根据所述各更新文件包,更新所述应用软件。
8.如权利要求6所述的应用软件更新装置,其特征在于,所述应用软件更新装置还包括:
回滚模块,用于存储所述应用软件更新前各模块的原始文件包;若所述应用软件更新失败,则根据所述原始文件包,控制所述应用软件回滚至更新前的版本。
9.如权利要求6、7或8所述的应用软件更新装置,其特征在于,所述检测模块还用于,基于本地安装的应用软件向服务器发送更新请求,获取所述服务器返回的更新配置文件;根据所述更新配置文件记载的所述应用软件各模块的更新版本信息,以及所述应用软件本地安装的各模块版本信息,检测所述应用软件是否需要更新模块;获取所述应用软件需更新的各模块。
10.如权利要求9所述的应用软件更新装置,其特征在于,所述下载模块还用于,根据所述更新配置文件,获取所述应用软件需更新的各模块的更新文件包下载地址;
根据所述应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包。

说明书全文

应用软件更新方法和装置

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种应用软件更新方法和装置。

背景技术

[0002] 移动终端已成为人们日常生活和工作中必不可少的一部分,为了丰富移动终端的功能,应用商店为用户提供了个性化的应用软件,例如社交软件、视频软件、咨询软件等等。
[0003] 由于应用软件需要不断的完善自身功能、修复漏洞,因此,用户需要经常更新移动终端中安装的应用软件。目前,应用软件的更新通常需要应用厂商提供应用软件的整个安装包,用户也必须下载整个应用软件的安装包,才能进行更新。
[0004] 但是,通常应用软件的更新仅仅是部分功能的更新或维护,则安装包中包括了大量不需要进行更新的模数据。这就到导致了在打包应用软件的安装包时,有大量工作是无用的,浪费开发成本。

发明内容

[0005] 本发明的主要目的在于提供一种应用软件更新方法,旨在解决应用软件的更新成本高的技术问题。
[0006] 为实现上述目的,本发明提供一种应用软件更新方法,所述应用软件更新方法包括以下步骤:
[0007] 根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块;
[0008] 根据所述应用软件需更新的各模块,下载对应的各更新文件包;
[0009] 根据所述各更新文件包,更新所述应用软件。
[0010] 在一个实施例中,在检测到所述应用软件启动时,根据所述各更新文件包,更新所述应用软件。
[0011] 在一个实施例中,所述根据所述各更新文件包,更新所述应用软件的步骤之前还包括:
[0012] 存储所述应用软件更新前各模块的原始文件包;
[0013] 所述根据所述各更新文件包,更新所述应用软件的步骤之后,还包括:
[0014] 若所述应用软件更新失败,则根据所述原始文件包,控制所述应用软件回滚至更新前的版本
[0015] 在一个实施例中,所述根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块的步骤包括:
[0016] 基于本地安装的应用软件向服务器发送更新请求,获取所述服务器返回的更新配置文件;
[0017] 根据所述更新配置文件记载的所述应用软件各模块的更新版本信息,以及所述应用软件本地安装的各模块版本信息,检测所述应用软件是否需要更新模块;
[0018] 获取所述应用软件需更新的各模块。
[0019] 在一个实施例中,所述根据所述应用软件需更新的各模块,下载对应的各更新文件包的步骤包括:
[0020] 根据所述更新配置文件,获取所述应用软件需更新的各模块的更新文件包下载地址;
[0021] 根据所述应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包。
[0022] 此外,为实现上述目的,本发明还提供一种应用软件更新装置,所述应用软件更新装置包括:
[0023] 检测模块,用于根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块;
[0024] 下载模块,用于根据所述应用软件需更新的各模块,下载对应的各更新文件包;
[0025] 更新模块,用于根据所述各更新文件包,更新所述应用软件。
[0026] 在一个实施例中,所述更新模块还用于,
[0027] 在检测到所述应用软件启动时,根据所述各更新文件包,更新所述应用软件。
[0028] 在一个实施例中,所述应用软件更新装置还包括:
[0029] 回滚模块,用于存储所述应用软件更新前各模块的原始文件包;若所述应用软件更新失败,则根据所述原始文件包,控制所述应用软件回滚至更新前的版本。
[0030] 在一个实施例中,所述检测模块还用于,
[0031] 基于本地安装的应用软件向服务器发送更新请求,获取所述服务器返回的更新配置文件;根据所述更新配置文件记载的所述应用软件各模块的更新版本信息,以及所述应用软件本地安装的各模块版本信息,检测所述应用软件是否需要更新模块;获取所述应用软件需更新的各模块。
[0032] 在一个实施例中,所述下载模块还用于,
[0033] 根据所述更新配置文件,获取所述应用软件需更新的各模块的更新文件包下载地址;根据所述应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包。
[0034] 本发明提出的一种应用软件更新方法和装置,通过根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取应用软件需更新的各模块;然后,根据应用软件需更新的各模块,下载对应的各更新文件包;并根据各更新文件包,更新所述应用软件。本发明例通过对应用软件进行更新检测,得到当前应用软件需要更新的各模块,从而仅下载需要更新和增加的各模块对应的更新文件包,实现了根据模块化的更新文件包对应用软件进行部分更新,降低了应用软件的版本更新迭代成本,仅通过模块的更新或增加即可实现新功能的增加或是已有功能的维护,极大地提升了用户体验。
附图说明
[0035] 图1为本发明应用软件更新方法第一实施例的流程示意图;
[0036] 图2为本发明应用软件更新方法第二实施例的流程示意图;
[0037] 图3为本发明应用软件更新方法第三实施例的流程示意图;
[0038] 图4为本发明应用软件更新方法第四实施例的流程示意图;
[0039] 图5为本发明应用软件更新方法第五实施例的流程示意图;
[0040] 图6为本发明应用软件更新装置第一实施例、第二实施例、第四实施例和第五实施例的功能模块示意图;
[0041] 图7为本发明应用软件更新装置第三实施例的功能模块示意图。
[0042] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0043] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0044] 参照图1,本发明应用软件更新方法第一实施例提供一种应用软件更新方法,所述应用软件更新方法包括:
[0045] 步骤S10、根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块。
[0046] 本发明通过对应用软件进行检测,获取应用软件需更新的各模块,并仅下载需更新的各模块的更新文件包,以更新应用软件,从而减少了应用软件的更新成本。
[0047] 本实施例中,应用软件以模块化的形式进行配置,以便于对应用软件进行模块化的更新,例如,将应用软件划分为首页模块、注册登录模块、地图模块、航班模块等。需要说明的是,本实施例中应用软件各模块的软件安装包是按照预先配置的存储规则,分别进行存储的。
[0048] 具体的,作为一种实施方式,首先,移动终端获取服务器发送的应用软件更新配置文件。
[0049] 移动终端可以在应用软件启动后,主动向服务器发送请求,获取应用软件的更新配置文件,也可以接受服务器推送的更新配置文件,可根据需要灵活设置。
[0050] 其中,应用软件的更新配置文件记载了当前应用软件中各模块的更新信息。例如,当应用厂商发布新版本的应用软件时,应用软件的更新配置文件记载了新版本应用软件中各模块的更新信息。
[0051] 然后,移动终端根据更新配置文件,检测本地安装的应用软件各模块,分别判断应用软件的各模块是否需要更新。
[0052] 需要说明的是,本实施例中检测得到需要更新的模块包括:本地应用软件需增加的模块、删除的模块、替换的模块、修改的模块等。
[0053] 例如,对于移动终端本地安装的应用软件1,若更新配置文件中记载应用软件1中模块A的版本为3,本地安装的模块A版本为1,则判定应用软件1需要更新模块A;若更新配置文件中记载应用软件1中模块C的版本为1,本地并未安装模块C,则判定应用软件1需要增加模块C。
[0054] 由此,得到应用软件需更新的各模块。
[0055] 步骤S20、根据所述应用软件需更新的各模块,下载对应的各更新文件包。
[0056] 在得到应用软件需更新的各模块,分别下载应用软件需进行更新的各模块的更新文件包。
[0057] 然后,移动终端根据预先配置的文件路径存储下载的各更新文件包。
[0058] 例如,应用软件1需更新模块A,增加模块C,移动终端分别下载得到更新文件包A和更新文件包C,则移动终端根据预先配置的文件路径,将更新文件包A存储到模块A对应的文件夹中,将更新文件包存储到模块C对应的文件夹中。
[0059] 步骤S30、根据所述各更新文件包,更新所述应用软件。
[0060] 在得到各更新文件包后,根据根各更新文件包更新对应的各模块,从而更新应用软件。
[0061] 在本实施例中,根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取应用软件需更新的各模块;然后,根据应用软件需更新的各模块,下载对应的各更新文件包;并根据各更新文件包,更新所述应用软件。本实施例通过对应用软件进行更新检测,得到当前应用软件需要更新的各模块,从而仅下载需要更新的各模块对应的更新文件包,实现了根据模块化的更新文件包对应用软件进行部分更新,降低了应用软件的版本更新迭代成本,仅通过模块的更新即可实现新功能的增加或是已有功能的维护,极大地提升了用户体验。
[0062] 进一步的,参照图2,本发明应用软件更新方法第二实施例提供一种应用软件更新方法,基于上述图1所示的实施例,所述步骤S30包括:
[0063] 步骤S31、在检测到所述应用软件启动时,根据所述各更新文件包,更新所述应用软件。
[0064] 本实施例中,在获取应用软件需更新的各模块更新文件包后,暂不更新各模块,以避免在用户使用应用软件的过程中进行更新。
[0065] 然后,移动终端检测应用软件的启动状态。
[0066] 在检测到应用软件启动时,调用下载的各更新文件包,更新对应的各模块;对于当前不需要进行更新的各模块,则调用原始文件包,从而启动应用软件。
[0067] 由此,实现了应用软件的更新。
[0068] 在本实施例中,在检测到应用软件启动时,调用应用软件需更新的各模块的更新文件包,进行应用软件的更新。本实施例仅在应用软件启动时进行更新操作,避免在用户操作应用软件时,更新行为中断用户操作,影响用户体验。并且,在应用软件启动时进行更新,实现了应用软件的静默自动更新,无需用户实时关注更新状态,提升了用户体验。
[0069] 进一步的,参照图3,本发明应用软件更新方法第三实施例提供一种应用软件更新方法,基于上述图1或图2所示的实施例(本实施例以图1为例),所述步骤S30之前还包括:
[0070] 步骤S40、存储所述应用软件更新前各模块的原始文件包。
[0071] 所述步骤S30之后,还包括:
[0072] 步骤S50、若所述应用软件更新失败,则根据所述原始文件包,控制所述应用软件回滚至更新前的版本。
[0073] 本实施例中,在下载得到各更新文件包,进行存储时,并不替换掉各模块的原始文件包,而是根据各文件包的版本,分别进行存储。
[0074] 由此,在应用软件更新失败时,可以调用各模块更新前的原始文件包,控制应用软件回滚到更新前的版本,从而避免应用软件更新失败而导致应用软件不能使用。
[0075] 进一步的,若同一模块存储有多个版本的原始文件包,则根据原始文件包的版本,优先选取更新前版本最新的原始文件包用于回滚应用软件。
[0076] 例如,应用软件1的模块A,可以对应存储多个版本文件包:文件包1.0,文件包2.0和文件包3.0。其中,文件包1.0和文件包2.0为应用软件1更新前的原始文件包,文件包3.0为用于下载的用于更新的更新文件包。
[0077] 若根据文件包3.0进行更新时,应用软件1更新失败,则移动终端更新应用软件1更新前,版本最新的文件包2.0,用于控制应用软件1回滚至更新前的版本。
[0078] 进一步的,可配置移动终端在检测到当前的缓存空间占用量达到预设比例时,自动清理缓存空间中存储的各模块旧版本文件,但至少需要保留当前更新版本的上一个版本文件作为备用。
[0079] 在本实施例中,存储应用软件更新前各模块的原始文件包;若应用软件更新失败,则根据应用软件各模块的原始文件包,控制应用软件回滚至更新前的版本。本实施例在应用软件更新失败时,自动恢复到更新前的版本并正常启动,从而使得应用软件无论更新成功还是失败都不会影响用户对应用软件的使用,提升了用户体验。
[0080] 进一步的,参照图4,本发明应用软件更新方法第四实施例提供一种应用软件更新方法,基于上述图1、图2或图3所示的实施例(本实施例以图1为例),所述步骤S10包括:
[0081] 步骤S11、基于本地安装的应用软件向服务器发送更新请求,获取所述服务器返回所述应用软件的更新配置文件。
[0082] 本实施例中,移动终端主动基于本地安装的应用软件向服务器发送应用软件的更新请求,进行应用软件的更新检测。当然,移动终端也可以在收到用户输入的更新指令后,根据更新指令向服务器发送应用软件的更新请求。
[0083] 服务器在收到移动终端发送的更新请求后,根据更新请求,查找应用软件的更新配置文件,并返回给移动终端。需要说明的是,服务器中存储了应用软件的更新配置文件,记载了应用软件的更新版本信息,例如版本号等。
[0084] 移动终端接收服务器返回的更新配置文件。
[0085] 步骤S12、根据所述更新配置文件记载的所述应用软件各模块的更新版本信息,以及所述应用软件本地安装的各模块版本信息,检测所述应用软件是否需要更新模块。
[0086] 在得到更新配置文件后,移动终端根据更新配置文件中记载的各模块的更新版本信息,以及移动终端本地安装的各模块版本信息,分别检查移动终端本地安装的应用软件中的各模块,判断是否需要进行模块版本的更新,是否需要增加模块,是否需要删除模块等。
[0087] 需要说明的是,更新配置文件记载的各模块的更新版本信息,可以使用版本号进行识别,区分不同版本的模块。
[0088] 具体的,可根据移动终端本地安装的应用软件模块的版本号,与配置文件中对应记载的此模块的更新版本信息进行比对,从而分别检测应用软件的各模块是否需要更新。
[0089] 例如,根据更新配置文件的记载,应用软件1的模块A的更新版本信息,也即版本号为2.1。
[0090] 若移动终端本地安装的应用软件1的模块A的版本号为2.0,比更新配置文件中记载的模块A的版本旧,则判定模块A需要更新;若移动终端本地安装的应用软件1的模块A的版本号为2.1,与更新配置文件中记载的模块A的版本相同,则判定模块A不需要更新。
[0091] 若移动终端本地安装的应用软件1中并没有模块A,则判定应用软件1需要增加模块A。
[0092] 以此类推,移动终端分别检测本地应用软件的各模块是否更新。
[0093] 步骤S13、获取所述应用软件需更新的各模块。
[0094] 在本实施例中,基于本地安装的应用软件向服务器发送更新请求,获取服务器返回更新配置文件;根据更新配置文件记载的应用软件各模块的更新版本信息,以及应用软件本地安装的各模块版本信息,检测应用软件是否需要更新模块;获取应用软件需更新的各模块。本实施例通过对应用软件的各模块分别检测,判断是否需要更新模块,得到的检测结果是基于各模块的。从而,在更新应用软件时,可以根据检测结果仅更新需要更新的模块,而并非是更新应用软件整体,减少了软件更新的工作量,降低了软件的更新成本。
[0095] 进一步的,参照图5,本发明应用软件更新方法第五实施例提供一种应用软件更新方法,基于上述图4所示的实施例,所述步骤S20包括:
[0096] 步骤S21、根据所述更新配置文件,获取所述应用软件需更新的各模块的更新文件包下载地址。
[0097] 步骤S22、根据所述应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包。
[0098] 在得到应用软件当前需更新的各模块后,移动终端根据更新配置文件中记载的应用软件各模块的更新文件包下载地址,获取当前需要更新的各模块的更新文件包下载地址。
[0099] 然后,根据得到的各更新文件包下载地址,分别下载得到当前需要进行更新的各模块的更新文件包。
[0100] 然后,移动终端将需要进行更新的各模块更新文件包,根据预先配置的文件路径,分别进行存储。
[0101] 例如,移动终端本地安装的应用软件1中模块A的版本为2.0,下载得到的模块A的更新文件包版本为2.1,则将下载得到的更新文件包对应存储到模块A的缓存文件中,并以版本号将模块A各版本的更新文件包区分开来。
[0102] 由此,得到应用软件需更新的各模块的更新文件包。
[0103] 在本实施例中,根据更新配置文件,获取应用软件需更新的各模块的更新文件包下载地址;然后,根据应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包,并进行存储。本实施例仅下载需要进行更新的模块的更新文件包,减少了更新文件包下载耗费的流量和时间,提高了更新文件包的下载速度。
[0104] 参照图6,本发明应用软件更新装置第一实施例提供一种应用软件更新装置,所述应用软件更新装置包括:
[0105] 检测模块10,用于根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取所述应用软件需更新的各模块。
[0106] 本发明通过应用软件更新装置对应用软件进行检测,获取应用软件需更新的各模块,并仅下载需更新及增加的各模块的更新文件包,以更新应用软件,从而减少了应用软件的更新成本。
[0107] 本实施例中,应用软件以模块化的形式进行配置,以便于对应用软件进行模块化的更新,例如,将应用软件划分为首页模块、注册登录模块、地图模块、航班模块等。需要说明的是,本实施例中应用软件各模块的软件安装包是按照预先配置的存储规则,分别进行存储的。
[0108] 具体的,作为一种实施方式,首先,检测模块10获取服务器发送的应用软件更新配置文件。
[0109] 检测模块10可以在应用软件启动后,主动向服务器发送请求,获取应用软件的更新配置文件,也可以接受服务器推送的更新配置文件,可根据需要灵活设置。
[0110] 其中,应用软件的更新配置文件记载了当前应用软件中各模块的更新信息。例如,当应用厂商发布新版本的应用软件时,应用软件的更新配置文件记载了新版本应用软件中各模块的更新信息。
[0111] 然后,检测模块10根据更新配置文件,检测本地安装的应用软件各模块,分别判断应用软件的各模块是否需要更新。
[0112] 需要说明的是,本实施例中检测得到需要更新的模块包括:本地应用软件需增加的模块、删除的模块、替换的模块、修改的模块等。
[0113] 例如,对于移动终端本地安装的应用软件1,若更新配置文件中记载应用软件1中模块A的版本为3,本地安装的模块A版本为1,则判定应用软件1需要更新模块A;若更新配置文件中记载应用软件1中模块C的版本为1,本地并未安装模块C,则判定应用软件1需要增加模块C。
[0114] 由此,得到应用软件需更新的各模块。
[0115] 下载模块20,用于根据所述应用软件需更新的各模块,下载对应的各更新文件包。
[0116] 在得到应用软件需更新的各模块,下载模块20分别下载应用软件需进行更新的各模块的更新文件包。
[0117] 然后,下载模块20根据预先配置的文件路径存储下载的各更新文件包。
[0118] 例如,应用软件1需更新模块A,增加模块C,下载模块20分别下载得到更新文件包A和更新文件包C,则移动终端根据预先配置的文件路径,将更新文件包A存储到模块A对应的文件夹中,将更新文件包C存储到模块C对应的文件夹中。
[0119] 更新模块30,用于根据所述各更新文件包,更新所述应用软件。
[0120] 在得到各更新文件包后,更新模块30根据根各更新文件包更新对应的各模块,从而更新应用软件。
[0121] 在本实施例中,检测模块10根据服务器发送的更新配置文件对本地安装的应用软件进行更新检测,获取应用软件需更新的各模块;然后,下载模块20根据应用软件需更新的各模块,下载对应的各更新文件包;更新模块30根据各更新文件包,更新所述应用软件。本实施例通过对应用软件进行更新检测,得到当前应用软件需要更新的各模块,从而仅下载需要更新的各模块对应的更新文件包,实现了根据模块化的更新文件包对应用软件进行部分更新,降低了应用软件的版本更新迭代成本,仅通过模块的更新即可实现新功能的增加或是已有功能的维护,极大地提升了用户体验。
[0122] 进一步的,参照图6,本发明应用软件更新装置第二实施例提供一种应用软件更新装置,基于上述本发明应用软件更新装置第一实施例,所述更新模30还用于,[0123] 在检测到所述应用软件启动时,根据所述各更新文件包,更新所述应用软件。
[0124] 本实施例中,下载模块20在下载得到应用软件需更新的各模块更新文件包后,更新模30暂不更新各模块,以避免在用户使用应用软件的过程中进行更新。
[0125] 然后,更新模块30检测应用软件的启动状态。
[0126] 在更新模30检测到应用软件启动时,调用下载的各更新文件包,更新对应的各模块;对于当前不需要进行更新的各模块,则调用原始文件包,从而启动应用软件。
[0127] 由此,实现了应用软件的更新。
[0128] 在本实施例中,在检测到应用软件启动时,更新模块30调用应用软件需更新的各模块的更新文件包,进行应用软件的更新。本实施例仅在应用软件启动时进行更新操作,避免在用户操作应用软件时,更新行为中断用户操作,影响用户体验。并且,在应用软件启动时进行更新,实现了应用软件的静默自动更新,无需用户实时关注更新状态,提升了用户体验。
[0129] 进一步的,参照图7,本发明应用软件更新装置第三实施例提供一种应用软件更新装置,基于上述本发明应用软件更新装置第一实施例或第二实施例,所述应用软件更新装置还包括回滚模块40:
[0130] 所述回滚模块40,用于存储所述应用软件更新前各模块的原始文件包;若所述应用软件更新失败,则根据所述原始文件包,控制所述应用软件回滚至更新前的版本。
[0131] 本实施例中,在下载得到各更新文件包,进行存储时,并不替换掉各模块的原始文件包,而是回滚模块40根据各文件包的版本,分别进行存储。
[0132] 由此,在应用软件更新失败时,回滚模块40可以调用各模块更新前的原始文件包,控制应用软件回滚到更新前的版本,从而避免应用软件更新失败而导致应用软件不能使用。
[0133] 进一步的,若同一模块存储有多个版本的原始文件包,则根据原始文件包的版本,优先选取更新前版本最新的原始文件包用于回滚应用软件。
[0134] 例如,应用软件1的模块A,可以对应存储多个版本文件包:文件包1.0,文件包2.0和文件包3.0。其中,文件包1.0和文件包2.0为应用软件1更新前的原始文件包,文件包3.0为用于下载的用于更新的更新文件包。
[0135] 若根据文件包3.0进行更新时,应用软件1更新失败,则回滚模块40更新应用软件1更新前,版本最新的文件包2.0,用于控制应用软件1回滚至更新前的版本。
[0136] 进一步的,可配置移动终端在检测到当前的缓存空间占用量达到预设比例时,自动清理缓存空间中存储的各模块旧版本文件,但至少需要保留当前更新版本的上一个版本文件作为备用。
[0137] 在本实施例中,回滚模块40存储应用软件更新前各模块的原始文件包;若应用软件更新失败,则根据应用软件各模块的原始文件包,控制应用软件回滚至更新前的版本。本实施例在应用软件更新失败时,自动恢复到更新前的版本并正常启动,从而使得应用软件无论更新成功还是失败都不会影响用户对应用软件的使用,提升了用户体验[0138] 进一步的,参照图6,本发明应用软件更新装置第四实施例提供一种应用软件更新装置,基于上述本发明应用软件更新装置第一实施例、第二实施例或第三实施例(本实施例以本发明应用软件更新装置第一实施例为例),所述检测模块10还用于,[0139] 基于本地安装的应用软件向服务器发送更新请求,获取所述服务器返回所述应用软件的更新配置文件;根据所述更新配置文件记载的所述应用软件各模块的更新版本信息,以及所述应用软件本地安装的各模块版本信息,检测所述应用软件是否需要更新模块;获取所述应用软件需更新的各模块。
[0140] 本实施例中,检测模块10主动基于本地安装的应用软件向服务器发送应用软件的更新请求,进行应用软件的更新检测。当然,检测模块10也可以在收到用户输入的更新指令后,根据更新指令向服务器发送应用软件的更新请求。
[0141] 服务器在收到检测模块10发送的更新请求后,根据更新请求,查找应用软件的更新配置文件,并返回给检测模块10。需要说明的是,服务器中存储了应用软件的更新配置文件,记载了应用软件的更新版本信息,例如版本号等。
[0142] 检测模块10接收服务器返回的更新配置文件。
[0143] 在得到更新配置文件后,检测模块10根据更新配置文件中记载的各模块的更新版本信息,以及移动终端本地安装的各模块版本信息,分别检查移动终端本地安装的应用软件中的各模块,,判断是否需要进行模块版本的更新,是否需要增加模块,是否需要删除模块等。
[0144] 需要说明的是,更新配置文件记载的各模块的更新版本信息,可以使用版本号进行识别,区分不同版本的模块。
[0145] 具体的,可根据移动终端本地安装的应用软件模块的版本号,与配置文件中对应记载的此模块的更新版本信息进行比对,从而分别检测应用软件的各模块是否需要更新。
[0146] 例如,根据更新配置文件的记载,应用软件1的模块A的更新版本信息,也即版本号为2.1。
[0147] 若移动终端本地安装的应用软件1的模块A的版本号为2.0,比更新配置文件中记载的模块A的版本旧,则检测模块10判定模块A需要更新;若移动终端本地安装的应用软件1的模块A的版本号为2.1,与更新配置文件中记载的模块A的版本相同,则检测模块10判定模块A不需要更新。
[0148] 若移动终端本地安装的应用软件1中并没有模块A,则判定应用软件1需要增加模块A。
[0149] 以此类推,检测模块10分别检测本地应用软件的各模块是否更新。
[0150] 检测模块10获取应用软件需更新的各模块。
[0151] 在本实施例中,检测模块10基于本地安装的应用软件向服务器发送更新请求,获取服务器返回更新配置文件;根据更新配置文件记载的应用软件各模块的更新版本信息,以及应用软件本地安装的各模块版本信息,检测应用软件是否需要更新模块;获取应用软件需更新的各模块。本实施例通过对应用软件的各模块分别检测,判断是否需要更新模块,得到的检测结果是基于各模块的。从而,在更新应用软件时,可以根据检测结果仅更新需要更新的模块,而并非是更新应用软件整体,减少了软件更新的工作量,降低了软件的更新成本。
[0152] 进一步的,参照图6,本发明应用软件更新装置第五实施例提供一种应用软件更新装置,基于上述本发明应用软件更新装置第四实施例,所述下载模块20还用于,[0153] 根据所述更新配置文件,获取所述应用软件需更新的各模块的更新文件包下载地址;根据所述应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包。
[0154] 在得到应用软件当前需更新的各模块后,下载模块20根据更新配置文件中记载的应用软件各模块的更新文件包下载地址,获取当前需要更新的各模块的更新文件包下载地址。
[0155] 然后,下载模块20根据得到的各更新文件包下载地址,分别下载得到当前需要进行更新的各模块的更新文件包。
[0156] 然后,下载模块20将需要进行更新的各模块更新文件包,根据预先配置的文件路径,分别进行存储。
[0157] 例如,移动终端本地安装的应用软件1中模块A的版本为2.0,下载得到的模块A的更新文件包版本为2.1,则将下载得到的更新文件包对应存储到模块A的缓存文件中,并以版本号将模块A各版本的更新文件包区分开来。
[0158] 由此,下载模块20得到应用软件需更新的各模块的更新文件包。
[0159] 在本实施例中,下载模块20根据更新配置文件,获取应用软件需更新的各模块的更新文件包下载地址;然后,根据应用软件需更新的各模块的更新文件包下载地址,分别下载得到各更新文件包,并进行存储。本实施例仅下载需要进行更新的模块的更新文件包,减少了更新文件包下载耗费的流量和时间,提高了更新文件包的下载速度。
[0160] 以上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈