一种差分升级包生成方法、软件升级方法及相应装置的制造方法

文档序号:9417181阅读:245来源:国知局
一种差分升级包生成方法、软件升级方法及相应装置的制造方法
【技术领域】
[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]图1为本发明实施例一提供的一种差分升级包生成方法的流程示意图;
[0029]图2为本发明实施例二提供的一种软件升级方法的流程示意图;
[0030]图3为本发明实施例三提供的一种软件升级方法的流程示意图;
[0031]图4为本发明实施例四提供的一种优选的软件升级方法的流程示意图;
[0032]图5为本发明实施例五提供的一种差分升级包生成装置的结构框图;
[0033]图6为本发明实施例六提供的一种软件升级装置的结构框图。
【具体实施方式】
[0034]下面结合附图并通过【具体实施方式】来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0035]在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
[0036]实施例一
[0037]图1为本发明实施例一提供的一种差分升级包生成方法的流程示意图,该方法可以由差分升级包生成装置执行,其中该装置可由软件和/或硬件实现。如图1所示,该方法包括:
[0038]步骤101、获取新版本文件和旧版本文件。
[0039]示例性的,用于执行本发明实施例的装置具体可集成于具备数据处理功能的终端设备中,如台式机、笔记本电脑及服务器等。
[0040]示例性的,本实施例中所生成的差分升级包可用于对手机、平板电脑和智能手表等移动设备的系统软件或应用软件(如微信、QQ及淘宝等)进行版本升级。
[0041]示例性的,软件开发人员对旧版本软件功能进行完善时,通常仅对旧版本中的部分数据或代码等进行修改,本步骤中的旧版本文件具体可为需要进行修改的文件,而新版本文件具体可为在旧版本文件基础上进行修改后所生成的新的文件。
[0042]步骤102、根据新版本文件生成模板校验码。
[0043]示例性的,模板校验码具体可为第五版消息摘要算法(Message DigestAlgorithm,MD5)码或安全哈希算法(Secure Hash Algorithm, SHA1)码,优选为 MD5 码。上述两种算法是单项散列函数的典型代表,广泛地应用在信息安全和数字签名等各个领域,其共同特点是可将如字符串或文件等原始消息转化为固定长度的较小的二进制值,即MD5码或SHAl码。以MD5码为例,同一个文件的MD5码是唯一的,任何改动均会引起MD5码的变化,所以MD5码可以作为新版本文件的一个身份标识。
[0044]步骤103、根据新版本文件和旧版本文件生成差分文件。
[0045]具体的,可对新版本文件和旧版本文件进行差分操作,以生成差分文件。示例性的,所述差分操作具体可为将新版本文件和旧版本文件进行比较,提取其中不相同的数据或代码。然后再根据所提取的不同的数据或代码来生成差分文件。
[0046]步骤104、建立差分文件与模板校验码的对应关系,以生成差分升级包。
[0047]示例性的,所获取的新版本文件和旧版本文件分别为Al和A2,依据MD5算法对Al进行处理,生成模板校验码为a,根据Al和A2所生成的差分文件为A3,那么本步骤中,建立A3与a的对应关系。例如,可建立一个关系列表,在该关系列表中罗列差分文件与模板校验码之间的对应关系,汇总关系列表、各差
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1