CN105404536A - 终端软件升级方法及终端软件升级装置 - Google Patents

终端软件升级方法及终端软件升级装置 Download PDF

Info

Publication number
CN105404536A
CN105404536A CN201510928900.7A CN201510928900A CN105404536A CN 105404536 A CN105404536 A CN 105404536A CN 201510928900 A CN201510928900 A CN 201510928900A CN 105404536 A CN105404536 A CN 105404536A
Authority
CN
China
Prior art keywords
software
backup
upgrading
information
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510928900.7A
Other languages
English (en)
Other versions
CN105404536B (zh
Inventor
龚敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201510928900.7A priority Critical patent/CN105404536B/zh
Publication of CN105404536A publication Critical patent/CN105404536A/zh
Application granted granted Critical
Publication of CN105404536B publication Critical patent/CN105404536B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种终端软件升级方法,其包括:接收软件升级指令,并根据该软件升级指令,读取备份信息;判断该备份信息中是否包括软件升级进度信息;如包括软件升级进度信息,则根据该软件升级进度信息,从指定位置获取软件安装数据;使用该软件安装数据对软件程序备份进行升级操作。本发明还提供一种终端软件升级装置,本发明的终端软件升级方法及终端软件升级装置通过设置主软件存储区域和备份软件存储区域两个区域,在软件升级中断的情况下,既保障了软件的正常运行,又实现了断点升级,从而提高了软件升级的效率。

Description

终端软件升级方法及终端软件升级装置
技术领域
本发明涉及通信领域,特别是涉及一种终端软件升级方法及终端软件升级装置。
背景技术
在产品开发和维护过程中,经常需要对软件进行升级,以更改原有版本软件存在的缺陷,实现更多的功能。在日常软件升级中,由于传输中断、人工操作失误、存储操作故障等原因会使升级过程中断,导致升级失败。此时必须快速回退到原有版本的软件,以保证该软件的正常运行。由于此过程中没有保存当次升级的相关数据,因此在下次升级时,需要从头开始升级,这样大大降低了升级的效率,无法给用户提供良好的用户体验。
故有必要提供一种软件升级方法,在因软件升级中断导致升级失败的情况下,既能保证软件能正常运行,又能保存当次升级的相关数据,便于下次升级从断点继续升级。
发明内容
本发明实施例提供一种既能保证软件正常运行,又能进行断点升级的终端软件升级方法及终端软件升级装置;以解决现有的终端软件升级方法及终端软件升级装置无法同时实现软件正常运行和断点升级的技术问题。
本发明实施例提供一种终端软件升级方法,其包括:
接收软件升级指令,并根据该软件升级指令,读取备份信息;
判断该备份信息中是否包括软件升级进度信息;
如包括软件升级进度信息,则根据该软件升级进度信息,从指定位置获取软件安装数据;以及
使用该软件安装数据对软件程序备份进行升级操作。
本发明实施例还提供一种终端软件升级装置,其包括:
备份信息读取模块,用于接收软件升级指令,并根据该软件升级指令,读取备份信息;
软件升级进度信息判断模块,用于判断该备份信息中是否包括软件升级进度信息;
软件安装数据获取模块,用于在包括软件升级进度信息时,根据该软件升级进度信息,从指定位置获取软件安装数据;以及
第一升级模块,用于使用该软件安装数据对软件程序备份进行升级操作。
相较于现有技术的终端软件升级方法及终端软件升级装置,本发明的终端软件升级方法及终端软件升级装置通过设置主软件存储区域存储原有版本软件相关数据,备份软件存储区域存储升级版本软件相关数据,在软件升级中断的情况下既可以有效的保证软件的运行,又可以实现断点升级;解决了现有的终端软件升级方法及终端软件升级装置无法同时实现软件正常运行和断点升级的技术问题。
附图说明
图1为本发明的终端软件升级方法的第一优选实施例的流程图;
图2为本发明的终端软件升级方法的第二优选实施例的流程图;
图3为本发明的终端软件升级装置的第一优选实施例的结构图;
图4a为本发明的终端软件升级装置的第二优选实施例的结构图;
图4b为本发明的终端软件升级装置的第二优选实施例的另一结构图;
图4c为本发明的终端软件升级装置的第一升级模块的结构图;
图5为本发明的终端软件升级方法及终端软件升级装置的具体实施例的场景示意图。
具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。
在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行之作业的步骤及符号来说明,除非另有述明。因此,其将可了解到这些步骤及操作,其中有数次提到为由计算机执行,包括了由代表了以一结构化型式中的数据之电子信号的计算机处理单元所操纵。此操纵转换该数据或将其维持在该计算机之内存系统中的位置处,其可重新配置或另外以本领域技术人员所熟知的方式来改变该计算机之运作。该数据所维持的数据结构为该内存之实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域技术人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
本发明的终端软件升级装置可使用各种电子设备进行实施,该电子设备包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(比如移动电话、个人数字助理、媒体播放器等等)、多处理器系统、消费型电子设备、小型计算机、大型计算机、包括上述任意系统或设备的分布式计算环境,等等。但该电子设备优选为移动设备,以提高移动设备中软件升级的效率。
实施例一
请参照图1,图1为本发明的终端软件升级方法的第一优选实施例的流程图。该终端包括用于存储软件程序的主软件存储区域和用于存储软件程序备份以及相应的备份信息的备份软件存储区域。其中,该主软件存储区域的设置用于使软件运行免受升级失败的影响,从而保障软件的正常运行。该备份软件存储区域的设置用于实现软件升级。本优选实施例的终端软件升级方法包括:
步骤S101,接收软件升级指令,并根据软件升级指令,读取备份信息;
步骤S102,判断该备份信息中是否包括软件升级进度信息;
步骤S103,如不包括软件升级进度信息,则使用完整的软件安装数据对软件程序备份进行升级操作;
步骤S104,如包括所述软件升级进度信息,则根据软件升级进度信息,从指定位置获取软件安装数据;
步骤S105,使用所述软件安装数据对所述软件程序备份进行升级操作。
下面详细说明本优选实施例的终端软件升级方法的各步骤的具体流程。
在步骤S101中,终端接收软件升级指令,并根据该软件升级指令,读取备份信息。具体的来说,升级指令有两种产生方式,一种是用户点击待升级软件的安装包,产生升级指令。另一种是,终端检测到软件有新的版本,产生软件升级提示指令,用户根据该提示选择确定升级后产生软件升级指令。终端接收到上述软件升级指令,再读取备份信息,该备份信息可能包括备份软件版本信息,软件升级进度信息等与备份软件相关的信息,此处列举不作具体限定。随后转到步骤S102。
在步骤S102中,终端判断该备份信息中是否包括软件升级进度信息,如备份信息中不包含软件升级进度信息,则转入步骤S103;如备份信息中包含软件升级进度信息,则转入步骤S104。
在步骤S103中,如步骤S102中备份信息中不包括软件升级进度信息,则终端使用完整的软件安装数据对软件程序备份进行升级操作。
在步骤S104中,如步骤S102中备份信息中包括所述软件升级进度信息,则终端根据软件升级进度信息,从指定位置获取软件安装数据。如升级进度信息记录着软件升级完成一半时发生中断,在下次升级时从中间位置继续获取软件安装数据,这样无需从头升级,加快了软件升级的速度。其中,该软件安装数据既可以来源于网络服务器,也可以来源于各式存储设备。随后转入步骤S105。
在步骤S105中,终端使用该软件安装数据对软件程序备份进行升级操作。在此升级过程中,不会对主软件存储区域中存储的软件程序造成影响,只会读取安装数据对备份软件存储区域中存储的软件程序备份进行覆盖,因此即使升级失败,也可以运行主软件存储区域中存储的软件程序,这样有效的保障了软件的正常运行,不会给用户使用带来影响。
这样即完成了本优选实施例的终端软件升级方法的软件升级过程。
本优选实施例的终端软件升级方法通过设置主软件存储区域存储升级前版软件相关数据,备份软件存储区域存储升级版软件相关数据,这样既能使软件在软件升级中断的情况下正常运行,又能在下次升级时进行断点升级,从而提高了软件升级效率,给用户提供了良好的用户体验。
实施例二
请参照图2,图2为本发明的终端软件升级方法的第二优选实施例的流程图。该终端包括用于存储软件程序的主软件存储区域和用于存储软件程序备份以及相应的备份信息的备份软件存储区域。其中,该主软件存储区域的设置用于使软件运行免受升级失败的影响,从而保障软件的正常运行。该备份软件存储区域的设置用于实现软件升级。本优选实施例的终端软件升级方法包括:
步骤S201,接收软件升级指令,并根据该软件升级指令,读取备份信息;
步骤S202,判断该备份信息是否包括备份软件版本信息;
步骤S203,如该备份信息包括备份软件版本信息,则获取备份软件版本信息;
步骤S204,获取待升级软件版本信息;
步骤S205,判断待升级软件版本信息与备份升级软件版本信息是否匹配;
步骤S206,如待升级软件版本信息与备份升级软件版本信息匹配,则判断备份信息是否包括软件升级进度信息;
步骤S207,如备份信息包括软件升级进度信息,则根据该软件升级进度信息,从指定位置获取软件安装数据;
步骤S208,使用该软件安装数据对软件程序备份进行升级操作;
步骤S209,在软件程序备份升级完成之后,将备份软件存储区域设置为主软件存储区域;
步骤S210,如该备份信息不包括备份软件版本信息,或待升级软件版本信息与备份升级软件版本信息不匹配备,又或备份信息不包括软件升级进度信息,则使用完整的软件安装数据对软件程序备份进行升级操作。
下面详细说明本优选实施例的终端软件升级方法的各步骤的具体流程。
在步骤S201中,终端接收软件升级指令,并根据该软件升级指令,读取备份信息。具体的来说,升级指令有两种产生方式,一种是用户点击待升级软件的安装包,产生升级指令。另一种是,终端检测到软件有新的版本,产生软件升级提示指令,用户根据该提示选择确定升级后产生软件升级指令。终端接收到上述软件升级指令,再读取备份信息,该备份信息可能包括备份软件版本信息,软件升级进度信息等与备份软件相关的信息,此处列举不作具体限定。随后转到步骤S202。
在步骤S202中,终端判断该备份信息是否包括备份软件版本信息,如该备份信息包括备份软件版本信息,则转入步骤S203;如该备份信息不包括备份软件版本信息,则转入步骤S210。其中,该备份软件版本信息记录的是软件最近一次升级操作的版本信息。
在步骤S203中,如步骤S202中备份信息包括备份软件版本信息,则终端获取该备份软件版本信息。随后转入步骤S204。
在步骤S204中,终端获取待升级软件版本信息。需要说明的是,该待升级软件版本信息记录的既可以是该软件最近一次升级中断的版本信息,也可以是该软件其他版本的信息。举例来说,如上一次升级失败的版本为3.0,则下次升级的软件版本既可以是版本3.0,也可以是比版本3.0更新的版本4.0。随后转入步骤S205。
在步骤S205中,终端判断待升级软件版本信息与备份升级软件版本信息是否匹配。如待升级软件版本信息与备份升级软件版本信息匹配,则转入步骤S206;如待升级软件版本信息与备份升级软件版本信息不匹配,则转入步骤S210。
在步骤S206中,如步骤S205中待升级软件版本信息与备份升级软件版本信息匹配,则说明当前软件升级的版本与上次软件升级的版本一致,因此终端要继续上一次中断的软件升级操作。此时终端将进一步判断备份信息中是否包含软件升级进度信息,如备份信息中包含软件升级进度信息,则转入步骤S207;如备份信息中不包含软件升级进度信息,则转入步骤S210。具体的说,当终端检测到备份软件存储区域中的软件程序备份升级中断时,先将此时的软件程序备份保留,再利用配置文件对断点进行记录,即某次升级在读取了20%的安装数据时中断,则用配置文件将这一信息记录下生成软件升级进度信息,下次升级时根据该软件升级进度信息,只需在20%处继续读取安装数据。在前后两次软件升级的版本一致的情况下,根据软件升级进度信息从断点读取安装数据,可以有效的提高软件升级的效率。
在步骤S207中,如步骤S206中判断备份信息包括软件升级进度信息,则终端根据该软件升级进度信息,从指定位置获取软件安装数据,如升级进度信息记录着软件升级完成一半时发生中断,在下次升级时从中间位置继续获取软件安装数据,这样无需从头升级,加快了软件升级的速度。其中,该软件安装数据既可以来源于网络服务器,也可以来源于各式存储设备。随后转入步骤S208。
在步骤S208中,终端使用该软件安装数据对软件程序备份进行升级操作。在此升级过程中,不会对主软件存储区域中存储的软件程序造成影响,只会读取安装数据对备份软件存储区域中存储的软件程序备份进行覆盖,因此即使升级失败,也可以运行主软件存储区域中存储的软件程序,这样有效的保障了软件的正常运行,不会给用户使用带来影响。
在此升级过程中,终端还会对软件升级进度信息进行更新。具体的来说,首先终端判断该升级操作是否中断,如果升级操作中断,则对当前升级操作后的软件程序备份进行保存,并根据该升级操作的进度对软件升级进度信息进行更新。
在步骤S209中,在软件程序备份升级完成之后,将备份软件存储区域设置为主软件存储区域,这样下次用户使用该软件时,从主软件存储区域启动版本升级后的软件。同时,还可将原有的主软件存储区域设置为备份软件存储区域,便于下一次软件升级;进一步的,也可以释放掉该存储区域,在需要进行软件升级时再申请,这样有利于提高存储空间的利用率。
在步骤S210中,如步骤S202中备份信息不包括备份软件版本信息,或步骤S205中待升级软件版本信息与备份升级软件版本信息不匹配,又或步骤S206中备份信息不包括软件升级进度信息,都使用完整的软件安装数据对软件程序备份进行升级操作。
这样即完成了本优选实施例的终端软件升级方法的软件升级过程。
本优选实施例的终端软件升级方法通过进一步完善主软件存储区域和备份软件存储区域的设置,进一步保障了软件在升级中断情况下的正常运行,以及下次升级时的断点升级,从而进一步提高了软件升级效率,给用户提供了更良好的用户体验。
实施例三
请参照图3,图3为本发明的终端软件升级装置的第一优选实施例的结构图。该终端包括用于存储软件程序的主软件存储区域和用于存储软件程序备份以及相应的备份信息的备份软件存储区域。其中,该主软件存储区域的设置用于使软件运行免受升级失败的影响,从而保障软件的正常运行。该备份软件存储区域的设置用于实现软件升级。
本优选实施例的终端软件升级装置30包括备份信息读取模块301、软件升级进度信息判断模块302、软件安装数据获取模块303、第一升级模块304以及第二升级模块305。备份信息读取模块301用于接收软件升级指令,并根据软件升级指令,读取所述备份信息;软件升级进度信息判断模块302用于判断备份信息中是否包括软件升级进度信息;软件安装数据获取模块303用于在包括软件升级进度信息时,根据软件升级进度信息,从指定位置获取软件安装数据;第一升级模块304用于使用软件安装数据对软件程序备份进行升级操作;第二升级模块305用于在不包括软件升级进度信息时,使用完整的软件安装数据对软件程序备份进行升级。
本终端软件升级装置30在使用时,首先,备份信息读取模块301接收软件升级指令,并根据该软件升级指令,读取备份信息。具体的来说,升级指令有两种产生方式,一种是用户点击待升级软件的安装包,产生升级指令。另一种是,终端检测到软件有新的版本,产生软件升级提示指令,用户根据该提示选择确定升级后产生软件升级指令。备份信息读取模块301接收到上述软件升级指令,再读取备份信息,该备份信息可能包括备份软件版本信息,软件升级进度信息等与备份软件相关的信息,此处列举不作具体限定。随后调用软件升级进度信息判断模块302。
然后,软件升级进度信息判断模块302判断该备份信息中是否包括软件升级进度信息,如备份信息中不包含软件升级进度信息,则调用第二升级模块305;如备份信息中包含软件升级进度信息,则调用第一升级模块304。
如软件升级进度信息判断模块302判断备份信息中不包括软件升级进度信息,则调用第二升级模块305使用完整的软件安装数据对软件程序备份进行升级操作。
如软件升级进度信息判断模块302判断备份信息中包括所述软件升级进度信息,则调用软件安装数据获取模块303根据软件升级进度信息,从指定位置获取软件安装数据。如升级进度信息记录着软件升级完成一半时发生中断,在下次升级时,软件安装数据获取模块303从中间位置继续获取软件安装数据,这样无需从头升级,加快了软件升级的速度。其中,该软件安装数据既可以来源于网络服务器,也可以来源于各式存储设备。随后调用第一升级模块304。
最后,第一升级模块304使用该软件安装数据对软件程序备份进行升级操作。在此升级过程中,不会对主软件存储区域中存储的软件程序造成影响,只会读取安装数据对备份软件存储区域中存储的软件程序备份进行覆盖,因此即使升级失败,也可以运行主软件存储区域中存储的软件程序,这样有效的保障了软件的正常运行,不会给用户使用带来影响。
这样即完成了本优选实施例的终端软件升级装置的软件升级过程。
本优选实施例的终端软件升级装置通过设置主软件存储区域存储升级前版本软件相关数据,备份软件存储区域存储升级版本软件相关数据,这样既能使软件在软件升级中断的情况下正常运行,又能在下次升级时进行断点升级,从而提高了软件升级效率,给用户提供了良好的用户体验。
实施例四
请参照图4a,图4a为本发明的终端软件升级装置的第二优选实施例的结构图。该终端包括用于存储软件程序的主软件存储区域和用于存储软件程序备份以及相应的备份信息的备份软件存储区域。其中,该主软件存储区域的设置用于使软件运行免受升级失败的影响,从而保障软件的正常运行。该备份软件存储区域的设置用于实现软件升级。
本优选实施例的终端软件升级装置40包括备份信息读取模块401、备份软件版本信息包含判断模块402、备份软件版本信息获取模块403、待升级软件版本信息获取模块404、版本信息匹配判断模块405、软件升级进度信息判断模块406、软件安装数据获取模块407、第一升级模块408、主软件存储区域设置模块409和第二升级模块410。备份信息读取模块401用于接收软件升级指令,并根据软件升级指令,读取备份信息;备份软件版本信息包含判断模块402用于判断备份信息是否包括备份软件版本信息;备份软件版本信息获取模块403用于在备份信息包括备份软件版本信息时,获取备份软件版本信息;待升级软件版本信息获取模块404用于获取待升级软件版本信息;版本信息匹配判断模块405用于判断待升级软件版本信息是否与备份升级软件版本信息匹配;软件升级进度信息判断模块406具体用于在待升级软件的版本信息与备份升级软件版本信息匹配时,判断备份信息中是否包括软件升级进度信息;软件安装数据获取模块407用于在包括软件升级进度信息时,根据软件升级进度信息,从指定位置获取软件安装数据;第一升级模块408用于使用软件安装数据对软件程序备份进行升级操作;主软件存储区域设置模块409用于在软件程序备份升级完成之后,将备份软件存储区域设置为主软件存储区域;第二升级模块410用于在备份信息不包括备份软件版本信息,或待升级软件版本信息与备份升级软件版本信息不匹配备,又或备份信息不包括软件升级进度信息时,使用完整的软件安装数据对软件程序备份进行升级操作。
请参照图4b,图4b为本发明的终端软件升级装置的第二优选实施例的另一结构图。本优选实施例的终端软件升级装置40还包括升级中断判断模块411、软件程序备份保存模块412以及软件升级进度信息创建模块413。升级中断判断模块411用于判断升级操作是否中断;软件程序备份保存模块412用于在升级操作中断时,对升级操作后的软件程序备份进行保存;软件升级进度信息创建模块413用于根据升级操作的进度,创建软件升级进度信息。
请参照图4c,图4c为本发明的终端软件升级装置的第一升级模块的结构图。第一升级模块408还包括升级中断判断单元4081、软件程序备份保存单元4082、软件升级进度信息更新单元4083。升级中断判断单元4081用于判断升级操作是否中断;软件程序备份保存单元4082用于在升级操作中断时,对升级操作后的软件程序备份进行保存;软件升级进度信息更新单元4083用于根据升级操作的进度,对软件升级进度信息进行更新。
本终端软件升级装置40在使用时,首先,备份信息读取模块401接收软件升级指令,并根据该软件升级指令,读取备份信息。具体的来说,升级指令有两种产生方式,一种是用户点击待升级软件的安装包,产生升级指令。另一种是,终端检测到软件有新的版本,产生软件升级提示指令,用户根据该提示选择确定升级后产生软件升级指令。备份信息读取模块401接收到上述软件升级指令,再读取备份信息,该备份信息可能包括备份软件版本信息,软件升级进度信息等与备份软件相关的信息,此处列举不作具体限定。随后调用备份软件版本信息包含判断模块402。
然后,备份软件版本信息包含判断模块402判断该备份信息是否包括备份软件版本信息,如该备份信息包括备份软件版本信息,则调用备份软件版本信息获取模块403;如该备份信息不包括备份软件版本信息,则调用第二升级模块410。其中,该备份软件版本信息记录的是软件最近一次升级操作的版本信息。
如备份软件版本信息包含判断模块402判断备份信息包括备份软件版本信息,则备份软件版本信息获取模块403获取该备份软件版本信息。随后调用待升级软件版本信息获取模块404。
接着,待升级软件版本信息获取模块404获取待升级软件版本信息。需要说明的是,该待升级软件版本信息记录的既可以是该软件最近一次升级中断的版本信息,也可以是该软件其他版本的信息。举例来说,如上一次升级失败的版本为3.0,则下次升级的软件版本既可以是版本3.0,也可以是比版本3.0更新的版本4.0。随后调用版本信息匹配判断模块405。
紧接着,版本信息匹配判断模块405判断待升级软件版本信息与备份升级软件版本信息是否匹配。如待升级软件版本信息与备份升级软件版本信息匹配,则调用软件升级进度信息判断模块406;如待升级软件版本信息与备份升级软件版本信息不匹配,则调用第二升级模块410。
如版本信息匹配判断模块405判断待升级软件版本信息与备份升级软件版本信息匹配,则说明当前软件升级的版本与上次软件升级的版本一致,因此终端要继续上一次中断的软件升级操作。此时软件升级进度信息判断模块406将进一步判断备份信息中是否包含软件升级进度信息,如备份信息中包含软件升级进度信息,则调用软件安装数据获取模块407;如备份信息中不包含软件升级进度信息,则调用第二升级模块410。具体的说,当升级中断判断模块411检测到备份软件存储区域中的软件程序备份升级中断时,软件程序备份保存模块412先将此时的软件程序备份保留,软件升级进度信息创建模块413再利用配置文件对断点进行记录,即某次升级在读取了20%的安装数据时中断,则软件升级进度信息创建模块413用配置文件将这一信息记录下生成软件升级进度信息,下次升级时根据该软件升级进度信息,第一升级模块408只需在20%处继续读取安装数据。在前后两次软件升级的版本一致的情况下,根据软件升级进度信息从断点读取安装数据,可以有效的提高软件升级的效率。
如软件升级进度信息判断模块406判断备份信息包括软件升级进度信息,则软件安装数据获取模块407根据该软件升级进度信息,从指定位置获取软件安装数据,如升级进度信息记录着软件升级完成一半时发生中断,在下次升级时,软件安装数据获取模块407从中间位置继续获取软件安装数据,这样无需从头升级,加快了软件升级的速度。其中,该软件安装数据既可以来源于网络服务器,也可以来源于各式存储设备。随后调用第一升级模块408。
其后,第一升级模块408使用该软件安装数据对软件程序备份进行升级操作。在此升级过程中,不会对主软件存储区域中存储的软件程序造成影响,只会读取安装数据对备份软件存储区域中存储的软件程序备份进行覆盖,因此即使升级失败,也可以运行主软件存储区域中存储的软件程序,这样有效的保障了软件的正常运行,不会给用户使用带来影响。
在此升级过程中,第一升级模块408中的软件升级进度信息更新单元4083还会对软件升级进度信息进行更新。具体的来说,首先第一升级模块408的升级中断判断单元4081判断该升级操作是否中断,如果升级操作中断,则第一升级模块408的软件程序备份保存单元4082对当前升级操作后的软件程序备份进行保存,最后软件升级进度信息更新单元4083根据该升级操作的进度对软件升级进度信息进行更新。
接着,在软件程序备份升级完成之后,主软件存储区域设置模块409将备份软件存储区域设置为主软件存储区域,这样下次用户使用该软件时,从主软件存储区域启动版本升级后的软件。同时,还可将原有的主软件存储区域设置为备份软件存储区域,便于下一次软件升级;进一步的,也可以释放掉该存储区域,在需要进行软件升级时再申请,这样有利于提高存储空间的利用率。
最后,备份软件版本信息包含判断模块402判断备份信息不包括备份软件版本信息,或版本信息匹配判断模块405判断待升级软件版本信息与备份升级软件版本信息不匹配,又或软件升级进度信息判断模块406判断备份信息不包括软件升级进度信息时,都调用第二升级模块410使用完整的软件安装数据对软件程序备份进行升级操作。
这样即完成了本优选实施例的终端软件升级装置的软件升级过程。
本优选实施例的终端软件升级装置通过进一步完善主软件存储区域和备份软件存储区域的设置,进一步保障了软件在升级中断情况下的正常运行,以及下次升级时的断点升级,从而进一步提高了软件升级效率,给用户提供了更良好的用户体验。
实施例五
请参照图5,图5为本发明的终端软件升级方法及终端软件升级装置的具体实施例的场景示意图。
步骤S501,用户用U盘(USBflashdisk,简称U盘)下载了音响软件2.0版本的安装包,欲将存储在电脑中备份软件存储区域中的1.0版本的音响软件升级为2.0版本。于是,用户将U盘连接电脑并打开该U盘,然后点击U盘中音响软件2.0版本安装包中的可执行文件,读取该安装包中的软件安装数据,将其写入备份软件存储区域,进行音响软件升级操作。
步骤S502,当软件升级至30%时,由于读取安装包中相关软件安装数据失败,导致音响软件升级中断。此时,备份软件存储区域保存已写入的前30%的软件安装数据,并记录下该升级进度信息。
步骤S503,用户欲继续对该音响软件进行升级,此时仍可以通过点击U盘中音响软件2.0版本安装包中的可执行文件从中断处继续读取软件安装数据进行升级;又由于主软件存储区域中存储的音响软件1.0版本仍能正常运行,故也可以先打开1.0版本的音响软件。此时后台检测到软件存在新版本2.0,提示用户进行软件升级,当用户同意进行软件升级后,再对比检测到的新版本2.0与上一次升级中断的版本2.0,由于两次升级的版本相同,因此调取升级进度信息,并根据该升级进度信息从30%处继续读取软件安装数据,进行软件升级。
步骤S504,音响软件升级完毕,将备份软件存储区域设置为主软件存储区域,这样下次用户再打开该音响软件时,将打开版本2.0的音响软件。
这样即完成了本具体实施例的终端软件升级方法及终端软件升级装置对音响软件进行升级的过程。
本发明的终端软件升级方法及终端软件升级装置通过设置主软件存储区域和备份软件存储区域两个存储区域,在软件升级中断的情况下,既保障了软件的正常运行,又实现了断点升级,从而提高了软件升级的效率。
本文提供了实施例的各种操作。在一个实施例中,所述的一个或多个操作可以构成一个或多个计算机可读介质上存储的计算机可读指令,其在被电子设备执行时将使得计算设备执行所述操作。描述一些或所有操作的顺序不应当被解释为暗示这些操作必需是顺序相关的。本领域技术人员将理解具有本说明书的益处的可替代的排序。而且,应当理解,不是所有操作必需在本文所提供的每个实施例中存在。
而且,本文所使用的词语“优选的”意指用作实例、示例或例证。奉文描述为“优选的”任意方面或设计不必被解释为比其他方面或设计更有利。相反,词语“优选的”的使用旨在以具体方式提出概念。如本申请中所使用的术语“或”旨在意指包含的“或”而非排除的“或”。即,除非另外指定或从上下文中清楚,“X使用A或B”意指自然包括排列的任意一个。即,如果X使用A;X使用B;或X使用A和B二者,则“X使用A或B”在前述任一示例中得到满足。
而且,尽管已经相对于一个或多个实现方式示出并描述了本公开,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本公开包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件(例如元件、资源等)执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本公开的示范性实现方式中的功能的公开结构不等同。此外,尽管本公开的特定特征已经相对于若干实现方式中的仅一个被公开,但是这种特征可以与如可以对给定或特定应用而言是期望和有利的其他实现方式的一个或多个其他特征组合。而且,就术语“包括”、“具有”、“含有”或其变形被用在具体实施方式或权利要求中而言,这样的术语旨在以与术语“包含”相似的方式包括。
本发明实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。上述的各装置或系统,可以执行相应方法实施例中的方法。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,因此本发明的保护范围以权利要求界定的范围为准。

Claims (10)

1.一种终端软件升级方法,所述终端包括用于存储软件程序的主软件存储区域和用于存储软件程序备份以及相应的备份信息的备份软件存储区域,其特征在于,包括:
接收软件升级指令,并根据所述软件升级指令,读取所述备份信息;
判断所述备份信息中是否包括软件升级进度信息;
如包括所述软件升级进度信息,则根据所述软件升级进度信息,从指定位置获取软件安装数据;以及
使用所述软件安装数据对所述软件程序备份进行升级操作。
2.根据权利要求1所述的终端软件升级方法,其特征在于,所述使用所述软件安装数据对所述软件程序备份进行升级操作步骤包括:
判断所述升级操作是否中断;
如升级操作中断,对所述升级操作后的所述软件程序备份进行保存;以及
根据所述升级操作的进度,对所述软件升级进度信息进行更新。
3.根据权利要求1所述的终端软件升级方法,其特征在于,如不包括所述软件升级进度信息,则使用完整的软件安装数据对所述软件程序备份进行升级操作。
4.根据权利要求3所述的终端软件升级方法,其特征在于,所述终端软件升级方法还包括:
判断所述升级操作是否中断;
如所述升级操作中断,对所述升级操作后的所述软件程序备份进行保存;以及
根据所述升级操作的进度,创建所述软件升级进度信息。
5.根据权利要求1所述的终端软件升级方法,其特征在于,所述接收软件升级指令,并根据所述软件升级指令,读取所述备份信息步骤之后包括:
判断所述备份信息是否包括备份软件版本信息;
如所述备份信息不包括备份软件版本信息,则使用完整的软件安装数据对所述软件程序备份进行升级操作;
如所述备份信息包括备份软件版本信息,则获取所述备份软件版本信息。
6.根据权利要求5所述的终端软件升级方法,其特征在于,所述如所述备份信息包括备份软件版本信息,则获取所述备份软件版本信息步骤之后包括:
获取待升级软件版本信息;
判断所述待升级软件版本信息是否与所述备份升级软件版本信息匹配;
如所述待升级软件版本信息与所述备份升级软件版本信息不匹配,则使用完整的软件安装数据对所述软件程序备份进行升级操作;
如所述待升级软件的版本信息与所述备份升级软件版本信息匹配,则判断所述备份信息中是否包括软件升级进度信息。
7.根据权利要求1所述的终端软件升级方法,其特征在于,所述软件安装数据来自网络服务器、各式存储设备。
8.根据权利要求1所述的终端软件升级方法,其特征在于,所述使用所述软件安装数据对所述软件程序备份进行升级操作步骤之后还包括:在所述软件程序备份升级完成之后,将备份软件存储区域设置为主软件存储区域。
9.一种终端软件升级装置,所述终端包括用于存储软件程序的主软件存储区域和用于存储软件程序备份以及相应的备份信息的备份软件存储区域,其特征在于,包括:
备份信息读取模块,用于接收软件升级指令,并根据所述软件升级指令,读取所述备份信息;
软件升级进度信息判断模块,用于判断所述备份信息中是否包括软件升级进度信息;
软件安装数据获取模块,用于在包括所述软件升级进度信息时,根据所述软件升级进度信息,从指定位置获取软件安装数据;以及
第一升级模块,用于使用所述软件安装数据对所述软件程序备份进行升级操作。
10.根据权利要求9所述的终端软件升级装置,其特征在于,所述第一升级模块包括:
中断判断单元,用于判断所述升级操作是否中断;
软件程序备份保存单元,用于在升级操作中断时,对所述升级操作后的所述软件程序备份进行保存;以及
软件升级进度信息更新单元,用于根据所述升级操作的进度,对所述软件升级进度信息进行更新。
CN201510928900.7A 2015-12-14 2015-12-14 终端软件升级方法及终端软件升级装置 Active CN105404536B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510928900.7A CN105404536B (zh) 2015-12-14 2015-12-14 终端软件升级方法及终端软件升级装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510928900.7A CN105404536B (zh) 2015-12-14 2015-12-14 终端软件升级方法及终端软件升级装置

Publications (2)

Publication Number Publication Date
CN105404536A true CN105404536A (zh) 2016-03-16
CN105404536B CN105404536B (zh) 2019-05-24

Family

ID=55470036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510928900.7A Active CN105404536B (zh) 2015-12-14 2015-12-14 终端软件升级方法及终端软件升级装置

Country Status (1)

Country Link
CN (1) CN105404536B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106028142A (zh) * 2016-05-25 2016-10-12 广东欧珀移动通信有限公司 一种播放设备的升级控制方法和装置
CN106648777A (zh) * 2016-12-23 2017-05-10 雷桦松 一种软件升级方法及装置
CN107291511A (zh) * 2017-06-30 2017-10-24 百度在线网络技术(北京)有限公司 用于车载安卓系统的应用程序升级的方法和装置
CN107315592A (zh) * 2017-07-01 2017-11-03 郭庭 一种软件升级方法及装置
CN110502264A (zh) * 2019-08-23 2019-11-26 深圳融安网络科技有限公司 系统升级方法、终端及可读存储介质
CN111124465A (zh) * 2019-11-28 2020-05-08 武汉虹信技术服务有限责任公司 一种跨网络c/s程序远程升级方法及系统
CN112596759A (zh) * 2020-12-04 2021-04-02 西安慧博文定信息技术有限公司 一种基于tf卡升级mcu软件的方法、装置及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841793A (zh) * 2011-06-23 2012-12-26 中兴通讯股份有限公司 一种软件的升级方法及终端
CN105094860A (zh) * 2014-05-05 2015-11-25 中兴通讯股份有限公司 终端软件的在线升级方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841793A (zh) * 2011-06-23 2012-12-26 中兴通讯股份有限公司 一种软件的升级方法及终端
CN105094860A (zh) * 2014-05-05 2015-11-25 中兴通讯股份有限公司 终端软件的在线升级方法及装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106028142A (zh) * 2016-05-25 2016-10-12 广东欧珀移动通信有限公司 一种播放设备的升级控制方法和装置
CN106648777A (zh) * 2016-12-23 2017-05-10 雷桦松 一种软件升级方法及装置
CN107291511A (zh) * 2017-06-30 2017-10-24 百度在线网络技术(北京)有限公司 用于车载安卓系统的应用程序升级的方法和装置
CN107315592A (zh) * 2017-07-01 2017-11-03 郭庭 一种软件升级方法及装置
CN110502264A (zh) * 2019-08-23 2019-11-26 深圳融安网络科技有限公司 系统升级方法、终端及可读存储介质
CN111124465A (zh) * 2019-11-28 2020-05-08 武汉虹信技术服务有限责任公司 一种跨网络c/s程序远程升级方法及系统
CN111124465B (zh) * 2019-11-28 2023-06-20 武汉虹信技术服务有限责任公司 一种跨网络c/s程序远程升级方法及系统
CN112596759A (zh) * 2020-12-04 2021-04-02 西安慧博文定信息技术有限公司 一种基于tf卡升级mcu软件的方法、装置及系统

Also Published As

Publication number Publication date
CN105404536B (zh) 2019-05-24

Similar Documents

Publication Publication Date Title
CN105404536A (zh) 终端软件升级方法及终端软件升级装置
CN103473067B (zh) 嵌入式Linux分区与数据还原方法、系统及系统开发方法
CN102722386B (zh) 生成无线固件升级包的方法和装置
CN105763602A (zh) 一种数据请求处理的方法、服务器及系统
CN110704335A (zh) 一种基于异步环形缓冲区的数据读取、写入方法及装置
CN102650947A (zh) 一种Android手持设备连续增量的空中升级方法
WO2016078263A1 (zh) 升级控制设备、终端、终端升级方法及系统、存储介质
CN103677870A (zh) 系统升级方法及采用该方法升级的系统
WO2017045491A1 (zh) 一种对 sqlite3 型嵌入式数据库进行升级的方法及系统
CN110083379A (zh) 一种服务器部件升级方法及相关装置
CN112182010B (zh) 脏页刷新方法和装置、存储介质和电子设备
US20170163787A1 (en) Method and electronic device for upgrading or downgrading system
CN110333876A (zh) 一种数据清除方法及控制设备
CN105279047A (zh) 数据备份装置、方法及数据恢复装置、方法
CN113157345A (zh) 前端工程自动启动方法及装置
CN105279006A (zh) 基于Android系统的屏幕截图方法及终端
CN107943501A (zh) 嵌入式设备升级方法、装置、计算机设备和存储介质
CN111522574B (zh) 差分包生成方法及相关设备
CN109298873A (zh) 一种系统升级方法及装置
CN105573788B (zh) 补丁处理的方法和设备以及生成补丁的方法和设备
CN108037932B (zh) Spi-nand的配置文件获取方法和装置
CN102331920B (zh) 一种数据处理方法及装置
CN107924397A (zh) 一种文件编辑方法和文件编辑器
CN102654844A (zh) 处理存储器数据的方法及可维持稳定性的计算机系统
US10503430B2 (en) Method and device for clearing data and electronic device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 523860 No. 18, Wu Sha Beach Road, Changan Town, Dongguan, Guangdong

Applicant after: OPPO Guangdong Mobile Communications Co., Ltd.

Address before: 523860 No. 18, Wu Sha Beach Road, Changan Town, Dongguan, Guangdong

Applicant before: Guangdong OPPO Mobile Communications Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant