一种增量升级的备份方法及装置制造方法及图纸

技术编号:13230598 阅读:41 留言:0更新日期:2016-05-13 12:48
本发明专利技术适用于android系统的软件升级领域,提供了一种增量升级的备份方法及装置,所述方法包括:在打开增量升级包时,创建备份包,所述备份包用于保存系统还原所需的系统还原文件与系统还原控制信息文件;根据所述增量升级包的信息对系统软件进行升级;在升级的同时,根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中;在升级结束后关闭所述增量升级包;在备份结束后关闭所述备份包。本发明专利技术实施例能够提高资源利用率。

【技术实现步骤摘要】

本专利技术属于android系统的软件升级领域,尤其涉及一种增量升级的备份方法及 目.ο
技术介绍
增量升级是现在android系统主流的升级方式,其具备体积小,下载速度快等特征。但是,目前的增量升级只支持单向升级,也就是低版本往高版本升级,若用户升级过后对高版本不满意的话,是无法回退到之前的低版本的,这时,若用户需要安装之前的低版本,则需要对历史版本做完整的系统备份,而完整的系统备份会占据大量的磁盘空间,从而造成资源浪费。
技术实现思路
本专利技术实施例提供了一种增量升级的备份方法,旨在解决现有方法在备份历史版本时需要完整的系统备份,从而导致资源浪费的问题。本专利技术实施例是这样实现的,一种增量升级的备份方法,所述方法包括下述步骤:在打开增量升级包时,创建备份包,所述增量升级包的信息包括多个系统升级文件与系统升级控制信息文件,所述备份包用于保存系统还原所需的系统还原文件与系统还原控制信息文件;根据所述增量升级包的信息对系统软件进行升级;在升级的同时,根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中;在升级结束后关闭所述增量升级包;在备份结束后关闭所述备份包。本专利技术实施例的另一目的在于提供一种增量升级的备份装置,所述装置包括:备份包创建单元,用于在打开增量升级包时,创建备份包,所述增量升级包的信息包括多个系统升级文件与系统升级控制信息文件,所述备份包用于保存系统还原所需的系统还原文件与系统还原控制信息文件;软件升级单元,用于根据所述增量升级包的信息对系统软件进行升级;软件备份单元,用于在升级的同时,根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中;增量升级包关闭单元,用于在升级结束后关闭所述增量升级包;备份包关闭单元,用于在备份结束后关闭所述备份包。在本专利技术实施例中,由于无需对升级前的系统软件做完整的系统备份,就能根据备份包以及升级后的系统软件恢复为升级前的系统软件,而备份包占用的内存空间与增量升级包占用的内存空间基本相同,远小于对升级前的系统软件做完整的系统备份占用的内存空间,因此,本申请的备份方法能够极大节约存储空间,提高资源利用率。【附图说明】图1是本专利技术第一实施例提供的一种增量升级的备份方法的流程图;图2是本专利技术第二实施例提供的一种增量升级的备份装置的结构图。【具体实施方式】为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术实施例中,在根据增量升级包的信息对系统软件进行升级的同时,根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中。 为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。实施例一:图1示出了本专利技术第一实施例提供的一种增量升级的备份方法的流程图,本实施例中,在采用增量升级包对系统软件进行增量升级的同时,根据增量升级包的信息以及系统软件的原有信息对升级前的系统软件信息进行备份,详述如下:步骤S11,在打开增量升级包时,创建备份包,所述增量升级包的信息包括多个系统升级文件与系统升级控制信息文件,所述备份包用于保存系统还原所需的系统还原文件与系统还原控制信息文件。其中,系统升级文件包括补丁文件和升级文件(如删除文件列表、新增文件等),系统升级控制信息文件包括运行删除文件操作、替换文件操作以及新增文件操作所需的脚本文件。优选地,在打开增量升级包之前,需要对增量升级包进行签名校验,以判断该增量升级包是否合法、安全。在打开增量升级包时,同时创建备份包,创建备份包可通过直接复制增量升级包得到,也可直接通过创建一个空的文件夹作为备份包。若通过直接复制增量升级包得到,则在备份包被创建之初,其包含的内容与增量升级包的完全相同,比如,一个增量升级包通常包括以下内容:补丁(Pach)文件、shal值校验脚本、删除文件列表、平台校验信息、新增文件夹及在该新增文件夹的新增文件等,则创建的备份包也包括上述内容。其中,shal值为文件通过安全哈希算法得到的消息摘要,根据判断该shal值是否发生变化可判断该shal值对应的文件的数据是否发生变化。当然,增量升级包还可以包括新增文件脚本文件、新增文件权限修改脚本文件、删除文件脚本文件等等,此处不再--列举。步骤S12,根据所述增量升级包的信息对系统软件进行升级。其中,所述根据所述增量升级包的信息对软件进行升级的步骤具体包括:Al、校验所述增量升级包的平台信息。该步骤中,校验增量升级包的平台信息主要是判断该增量升级包适用的平台与将要升级的软件所处的平台是否匹配。A2、在所述增量升级包的平台信息与系统软件当前运行的平台匹配时,采用所述系统升级控制信息文件将所述系统升级文件中包含的新增文件新增至所述系统软件,将所述系统升级文件包含的补丁文件替换在所述系统软件中与所述升级文件包含的补丁文件对应的补丁文件,以及根据所述系统升级文件包含的删除列表中的文件标识,删除所述系统升级文件包含的删除列表中的文件标识对应的文件。具体地,在增量升级包的平台信息与系统软件当前运行的平台信息相匹配时,依次验证所有补丁(Pach)的shal值,并在验证通过时,依次合并所有的pach。其中,pach的shal值为与pach的内容对应的字符串。步骤S13,在升级的同时,根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中。具体地,所述根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中的步骤具体包括:B1、在备份包的删除列表中记录所述系统升级文件中包含的新增文件的唯一标识;在备份包中存入所述系统软件中与所述升级文件包含的补丁文件对应的补丁文件;在备份包中存入所述系统升级文件包含的删除列表中的文件标识对应的文件;其中,上述记录有新增文件的唯一标识的删除列表、存入的补丁文件、以及存入的文件都属于系统还原文件。在该步骤中,将系统软件新增的文件作为备份包中将要删除的文件;将系统软件删除的文件作为备份包中将要新增的文件;将系统文件被替换之前的补丁文件作为备份包的补丁文件。B2、在备份包中存入运行删除文件操作、替换文件操作以及新增文件操作的脚本文件,存入的脚本文件作为系统还原控制信息文件。通过上述步骤,使得备份包存储的补丁不再是高版本的补丁,而是低版本的补丁。优选地,在所述在备份包中存入所述系统升级文件包含的删除列表中的文件标识对应的文件时,包括下述步骤:在备份包中存入需要增加的新增文件的权限值;所述需要增加的新增文件为所述系统升级文件包含的删除列表中的文件标识对应的文件。该步骤中,系统升级文件包含的删除列表中的文件标识对应的文件作为备份包的新增文件,即为从低版本升级到高版本新增的文件,将该新增文件对应的权限修改脚本文件记录的权限值,修本文档来自技高网...

【技术保护点】
一种增量升级的备份方法,其特征在于,所述方法包括下述步骤:在打开增量升级包时,创建备份包,所述增量升级包的信息包括多个系统升级文件与系统升级控制信息文件,所述备份包用于保存系统还原所需的系统还原文件与系统还原控制信息文件;根据所述增量升级包的信息对系统软件进行升级;在升级的同时,根据所述增量升级包的信息以及系统软件的原有信息对升级前的系统差异文件进行备份,生成系统还原文件与系统还原控制信息文件,并保存在所述备份包中;在升级结束后关闭所述增量升级包;在备份结束后关闭所述备份包。

【技术特征摘要】

【专利技术属性】
技术研发人员:彭芃
申请(专利权)人:TCL集团股份有限公司
类型:发明
国别省市:广东;44

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

1