一种可中断的recovery升级方法及装置的制造方法

文档序号:9235326阅读:218来源:国知局
一种可中断的recovery升级方法及装置的制造方法
【技术领域】
[0001]本发明涉及Android系统升级技术领域,更具体地说,是涉及一种可中断的recovery升级方法及装置。
【背景技术】
[0002]随着智能手机的普及,智能手机已成为了人们生活不可或缺的一部分。目前,现有的智能手机一般安装有Android系统、1S系统或其他手机系统。其中,Android系统具有recovery升级功能,可以在recovery模式下进行系统升级,保证系统的不断更新完善,给用户以最好的体验。但是在recovery模式中的升级过程是不可中断的,如果用户将手机升级到一定阶段时,突然想取消升级,那么就没有办法了,一旦执行了升级,只能坐等其升级完成,这给用户带来了极大的不便。

【发明内容】

[0003]本发明的目的在于克服现有技术中的上述缺陷,提供一种可中断的recovery升级方法及装置,其便于用户操作,避免了因误操作等情况导致的系统隐患问题发生。
[0004]为实现上述目的,本发明的第一方面提供了一种可中断的recovery升级方法,包括以下步骤:
[0005]在终端的recovery升级过程中,每执行一条升级命令,则将升级前的文件先备份到system分区下的backup目录,并生成一个新的升级脚本,在每执行完一条升级命令时分别对应地往所述升级脚本中写入一条状态恢复命令;
[0006]当接收到中断升级的指令时,检测系统当前执行到第几条升级命令,并在该条升级命令执行完成后,停止当前的升级过程;
[0007]执行当前写入到所述升级脚本中的每一条状态恢复命令,对应获取备份到backup目录中的升级前的文件进行反转升级,使系统在执行完成所述升级脚本中的所有状态恢复命令后恢复到升级前的状态。
[0008]作为优选的,在上述方法中,所述中断升级的指令是由终端检测到连续点击返回键的事件发生,且连续点击返回键的次数达到预设的次数阈值以及相邻两次点击返回键的时间差不超过预设的时间阈值时而生成。
[0009]作为优选的,在上述方法中,所述次数阈值设置为5次。
[0010]作为优选的,在上述方法中,当反转升级开始时,系统的升级进度条由反转升级前的正向播放变为反向播放,以显示恢复到升级前的状态的进度。
[0011]作为优选的,在上述方法中,所述在终端的recovery升级过程中执行的升级命令所指定的升级包由本地终端通过蓝牙连接方式连接到另一终端,从而通过另一终端根据本地终端的软体版本号信息下载而获得,或者,由本地终端直接通过连接OTA服务器下载而获得。
[0012]本发明的第二方面提供了一种可中断的recovery升级装置,该装置包括:
[0013]备份模块,用于在终端的recovery升级过程中,每执行一条升级命令,则将升级前的文件先备份到system分区下的backup目录;
[0014]升级脚本模块,用于生成一个新的升级脚本,在每执行完一条升级命令时分别对应地往所述升级脚本中写入一条状态恢复命令;
[0015]中断指令生成模块,用于生成中断升级的指令;
[0016]升级停止模块,用于当接收到中断升级的指令时,检测系统当前执行到第几条升级命令,并在该条升级命令执行完成后,停止当前的升级过程;
[0017]恢复模块,用于执行当前写入到所述升级脚本中的每一条状态恢复命令,对应获取备份到backup目录中的升级前的文件进行反转升级,使系统在执行完成所述升级脚本中的所有状态恢复命令后恢复到升级前的状态。
[0018]作为优选的,在上述装置中,所述中断指令生成模块进一步用于当终端检测到连续点击返回键的事件发生,且连续点击返回键的次数达到预设的次数阈值以及相邻两次点击返回键的时间差不超过预设的时间阈值时,则生成中断升级的指令。
[0019]作为优选的,在上述装置中,所述次数阈值设置为5次。
[0020]作为优选的,在上述装置中,该装置还包括:
[0021]进度条显示模块,用于当反转升级开始时,使系统的升级进度条由反转升级前的正向播放变为反向播放,以显示恢复到升级前的状态的进度。
[0022]作为优选的,在上述装置中,所述在终端的recovery升级过程中执行的升级命令所指定的升级包由本地终端通过蓝牙连接方式连接到另一终端,从而通过另一终端根据本地终端的软体版本号信息下载而获得,或者,由本地终端直接通过连接OTA服务器下载而获得。
[0023]与现有技术相比,本发明的有益效果在于:
[0024]本发明在用户中断升级时能够检测系统当前执行到第几条升级命令,并在该条升级命令执行完成后,停止当前的升级过程,之后执行当前写入到升级脚本中的每一条状态恢复命令,对应获取备份到system分区下的backup目录中的升级前的文件进行反转升级,使系统在执行完成所述升级脚本中的所有状态恢复命令后恢复到升级前的状态,运用本发明之后,用户可以在想要取消升级时执行中断操作,让系统回归到升级前的状态,其便于用户操作,避免了因误操作等情况导致的系统隐患问题发生。
【附图说明】
[0025]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0026]图1是本发明实施例所述的一种可中断的recovery升级方法的流程图;
[0027]图2是本发明实施例所述的一种可中断的recovery升级装置的结构框图;
[0028]图3是本发明实施例所述的另一种可中断的recovery升级装置的结构框图。
【具体实施方式】
[0029]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0030]实施例一
[0031]本发明的实施例一提供了一种可中断的recovery升级方法,下面结合附图对本实施例进行详细说明。图1是本发明实施例一的方法流程图,请参考图1,本发明实施例的方法包括以下步骤:
[0032]步骤S101、在终端的recovery升级过程中,每执行一条升级命令,则将升级前的文件先备份到system分区下的backup目录,并生成一个新的升级脚本,在每执行完一条升级命令时分别对应地往所述升级脚本中写入一条状态恢复命令;
[0033]本发明实施例中,上述终端的操作系统为Android(即安卓)系统。该recovery升级过程在Recovery模式下进行,其中,Recovery模式指的是一种可以对搭载Android系统的智能终端内部的数据或系统进行修改的模式。在这个模式下,用户可以刷入新的Android系统,或者对已有的Android系统进行备份或升级,也可以在此恢复出厂设置。
[0034]具体的,在recovery升级过程中新建的升级脚本可以为update_contrary_script升级脚本。其中,所述状态恢复命令的内容可以为当系统从Al状态升级到A2状态,那么先将Al状态的文件备份保存起来,若后面要中断升级,则恢复到Al状态。
[0035]在终端的recovery升级过程中执行的升级命令所指定的升级包可以由本地终端直接通过连接OTA服务器下载而获得。当然,也可以由本地终端通过蓝牙连接方式连接到另一终端,从而通过另一终端根据本地终端的软体版本号信息下载而获得,即可通过一个可承受高流量的终端A给另一个不可承受高流量的终端B进行recovery升级。
[0036]举例而目,终端A为可承受尚流量的终端,终端B为不可承受尚流量的终端,终端B可以利用终端A对自身进行recovery升级,此时需要终端A、B通过蓝牙建立连接,终端B向终端A发起请求,要进行recovery升级,同时终端B将自身的软体版本号信息记录到一个文件recovery, txt中,此文件在后台通过蓝牙发送给终端A,当终端A获取到终端B发来的recovery, txt文件,对其进行解析,通过解析出的版本号信息,从OTA服务器下载其对应的升级包到终端A的本地磁盘,下载完毕后,通过蓝牙将下载下来的升级包发送给终端B,同时发送recovery升级命令给终端B,升级命令中指定终端B的升级包位置,记位置为T,当终端B的系统获取到这些升级命令,重启进入recovery模式,则可以利用位置T的升级包进行升级。
[0037]步骤S102、当接收到中断升级的指令时,检测系统当前执行到第几条升级命令,并在该条升级命令执行完成后,停止当前的升级过程;
[0038]具体操作时,所述中断升级的指令可以由当终端检测到连续点击返回键的事件发生,且连续点击返回键的次数达到预设的次数阈值以及相邻两次点击返回键的时间差不超过预设的时间阈值时而生成。其中,所述次数阈值可以设置为5次,当然也可以为其他次数,只要能够防止误操作即可,非本实施为限。此外,所述时间差
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1