升级方法及装置制造方法及图纸

技术编号:14372002 阅读:68 留言:0更新日期:2017-01-09 17:50
本公开提供了一种升级方法及装置,属于网络技术领域。方法包括:获取终端当前系统的版本信息;根据当前系统的版本信息与目标系统的版本信息,将当前系统的第一分区中的数据与目标系统的第一分区中的数据进行比较,得到第一分区差量;如果检测到目标系统的第二分区中存在待更新预装应用,根据第一分区差量和待更新预装应用生成升级包;向终端发送升级包。本公开通过将系统数据和预装应用分别存储于不同分区,并采用不同的升级方法分别对系统及预装应用进行升级,既能确保在对系统升级时减小对带宽和对终端内存的占用率,还能避免预装应用发生改变导致无法完成升级的问题,提高了系统升级成功率。

【技术实现步骤摘要】

本公开涉及网络
,尤其涉及一种升级方法及装置
技术介绍
为了修复Bug(漏洞)、改善功能以及添加新的功能,经常需要对系统或应用进行升级,以更好地满足用户的使用需求。在空中下载技术(Over-the-AirTechnology,OTA)中,运营商将应用升级包或系统升级包置于OTA服务器中,终端或服务器基于当前版本与新版本之间的区别,计算当前版本与新版本之间的差量,根据该差量生成差量OTA包,终端通过下载并安装该差量OTA包,实现从当前版本到新版本的升级。对于包含预装应用的系统如Android系统而言,通过OTA技术进行系统升级的具体方法可以为:Android系统的系统分区划分为若干个块,每个块大小固定,在需要将该Android系统从当前版本升级为新版本时,将该当前版本的系统分区的每一个块与新版本的对应块进行比较,如果一样,标记为相同,如果不一样,计算差量并存储该差量,将该系统分区的每个块比较完以后,获取当前版本与新版本之间的差量集合,根据该差量集合获取差量OTA包,终端根据该差量OTA包即可将该Android系统从当前版本升级为新版本。
技术实现思路
为克服相关技术中存在的问题,本公开提供一种升级方法及装置。根据本公开实施例的第一方面,提供一种升级方法,包括:获取终端当前系统的版本信息;根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量,所述第一分区用于存储系统数据;如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包,所述第二分区用于存储至少一个预装应用;向所述终端发送所述升级包。在本公开的第一方面的第一种可能实现方式中,所述方法还包括:所述如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包之前,对于所述目标系统中的任一预装应用,检测所述当前系统的第二分区中是否存在所述预装应用;如果所述当前系统的第二分区中不存在所述预装应用,确定所述预装应用为所述待更新预装应用,执行根据所述第一分区差量和所述待更新预装应用,生成所述升级包的步骤;如果所述当前系统的第二分区中存在所述预装应用,检测所述当前系统的第二分区中的所述预装应用与所述目标系统中的所述预装应用是否一致,如果不一致,则确定所述预装应用为所述待更新预装应用,执行根据所述第一分区差量和所述待更新预装应用,生成所述升级包的步骤。在本公开的第一方面的第二种可能实现方式中,所述根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量之后,所述方法还包括:如果检测到所述目标系统的第二分区中不存在所述待更新预装应用,根据所述第一分区差量生成所述升级包。在本公开的第一方面的第三种可能实现方式中,所述第二分区以文件为粒度存储所述至少一个预装应用。在本公开的第一方面的第四种可能实现方式中,所述第一分区以预设大小的块为粒度存储所述系统数据。根据本公开实施例的第二方面,提供一种升级装置,包括:获取模块,用于获取终端当前系统的版本信息;比较模块,用于根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量,所述第一分区用于存储系统数据;生成模块,用于如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包,所述第二分区用于存储至少一个预装应用;发送模块,用于向所述终端发送所述升级包,以使得所述终端根据所述升级包从所述当前系统升级至所述目标系统。在本公开的第二方面的第一种可能实现方式中,所述装置还包括:检测模块,用于对于所述目标系统中的任一预装应用,检测所述当前系统的第二分区中是否存在所述预装应用;确定模块,用于如果所述当前系统的第二分区中不存在所述预装应用,确定所述预装应用为所述待更新预装应用;所述生成模块用于执行根据所述第一分区差量和所述待更新预装应用,生成所述升级包的步骤;所述检测模块还用于如果所述当前系统的第二分区中存在所述预装应用,检测所述当前系统的第二分区中的所述预装应用与所述目标系统中的所述预装应用是否一致;所述确定模块还用于如果所述当前系统的第二分区中的所述预装应用与所述目标系统中的所述预装应用不一致,则确定所述预装应用为所述待更新预装应用;所述生成模块用于执行根据所述第一分区差量和所述待更新预装应用,生成所述升级包的步骤。在本公开的第二方面的第二种可能实现方式中,所述生成模块还用于:如果检测到所述目标系统的第二分区中不存在所述待更新预装应用,根据所述第一分区差量生成所述升级包。在本公开的第二方面的第三种可能实现方式中,所述第二分区以文件为粒度存储所述至少一个预装应用。在本公开的第二方面的第四种可能实现方式中,所述第一分区以预设大小的块为粒度存储所述系统数据。第三方面,还提供了一种升级装置,包括:处理器;用于存储处理器可执行的指令的存储器;其中,该处理器被配置为:获取终端当前系统的版本信息;根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量,所述第一分区用于存储系统数据;如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包,所述第二分区用于存储至少一个预装应用;向所述终端发送所述升级包。本公开实施例提供的技术方案带来的有益效果是:由于预装应用与系统一样都存储在系统分区中,所以在用户将任一预装应用删除后,会导致原来用于存储该预装应用的块中的数据发生变化,进而导致无法根据块中数据的区别计算差量,也就无法完成系统升级,导致系统升级成功率低。本公开通过将系统数据和预装应用分别存储于第一分区和第二分区,采用不同的升级方法分别对系统及预装应用进行升级,既能确保在对系统升级时减小对带宽和对终端内存的占用率,还能够避免由于预装应用发生改变导致无法完成系统升级的问题,进而能够提高系统升级成功率。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是根据一示例性实施例示出的一种升级方法的流程图;图2A是根据一示例性实施例示出的一种升级方法的流程图;图2B是根据一示例性实施例示出的一种分区存储示意图;图3是根据一示例性实施例示出的一种升级装置框图;图4是根据一示例性实施例示出的一种升级装置400的框图。具体实施方式为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述本文档来自技高网...
升级方法及装置

【技术保护点】
一种升级方法,其特征在于,所述方法包括:获取终端当前系统的版本信息;根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量,所述第一分区用于存储系统数据;如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包,所述第二分区用于存储至少一个预装应用;向所述终端发送所述升级包。

【技术特征摘要】
1.一种升级方法,其特征在于,所述方法包括:获取终端当前系统的版本信息;根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量,所述第一分区用于存储系统数据;如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包,所述第二分区用于存储至少一个预装应用;向所述终端发送所述升级包。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述如果检测到所述目标系统的第二分区中存在待更新预装应用,根据所述第一分区差量和所述待更新预装应用,生成升级包之前,对于所述目标系统中的任一预装应用,检测所述当前系统的第二分区中是否存在所述预装应用;如果所述当前系统的第二分区中不存在所述预装应用,确定所述预装应用为所述待更新预装应用,执行根据所述第一分区差量和所述待更新预装应用,生成所述升级包的步骤;如果所述当前系统的第二分区中存在所述预装应用,检测所述当前系统的第二分区中的所述预装应用与所述目标系统中的所述预装应用是否一致,如果不一致,则确定所述预装应用为所述待更新预装应用,执行根据所述第一分区差量和所述待更新预装应用,生成所述升级包的步骤。3.根据权利要求1所述的方法,其特征在于,所述根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较,得到所述当前系统与所述目标系统的第一分区差量之后,所述方法还包括:如果检测到所述目标系统的第二分区中不存在所述待更新预装应用,根据所述第一分区差量生成所述升级包。4.根据权利要求1所述的方法,其特征在于,所述第二分区以文件为粒度存储所述至少一个预装应用。5.根据权利要求1所述的方法,其特征在于,所述第一分区以预设大小的块为粒度存储所述系统数据。6.一种升级装置,其特征在于,所述装置包括:获取模块,用于获取终端当前系统的版本信息;比较模块,用于根据所述当前系统的版本信息与目标系统的版本信息,将所述当前系统的第一分区中的数据与所述目标系统的第一分区中的数据进行比较...

【专利技术属性】
技术研发人员:梁博于淼赵枝阳
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:北京;11

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

1