一种软件升级方法及装置与流程

文档序号:11154525阅读:259来源:国知局
一种软件升级方法及装置与制造工艺

本发明涉及软件更新技术领域,特别涉及一种软件升级方法及装置。



背景技术:

在产品开发和维护过程中,经常需要对软件进行升级,以更改原有版本软件存在的缺陷,实现更多的功能。在日常软件升级中,由于传输中断、人工操作失误、存储操作故障等原因会使升级过程中断,导致升级失败。此时必须快速回退到原有版本的软件,以保证该软件的正常运行。由于此过程中没有保存当次升级的相关数据,因此在下次升级时,需要从头开始升级,这样大大降低了升级的效率,无法给用户提供良好的用户体验。

可见,在现有技术中,在软件升级中断导致升级失败的情况下,不能保存当次升级的相关数据,下次软件升级的必须重新发开始更新。因此,软件升级的效率较低。



技术实现要素:

本发明实施例的目的在于提供一种软件升级方法及装置,旨在解决当前的软件升级中断后无法继续进行升级的问题,以提高升级的效率。

为达到上述目的,本发明实施例公开了一种软件升级方法及装置,技术方案如下:

一种软件升级方法,所述方法包括:

软件升级平台通过短信发送单元将软件待更新版本信息和软件升级包的地址发送至待升级终端;

所述待升级终端接收所述待更新版本信息并与所述待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级;

所述待升级终端通过短信将所述确定是否需要升级的结果发送至所述软件升级平台;

当所述软件升级平台判断为需要进行软件升级的条件下,则通过网络数据传输单元传输所述软件升级的更新数据;

所述待升级终端接收所述升级软件的更新数据,使用所述安装数据对所述待升级软件的备份程序进行升级操作;

当所述升级操作异常时,判断所述升级操作是否需要中断;

如果是,获取升级的进度,并对所述升级操作后的更新数据进行保存;

根据所述升级操作的进度,对所述软件升级进度信息进行更新。

优选的,所述网络数据传输单元为GPRS网络通讯单元、EDGE网络通讯单元、CDMA网络通讯单元、WCDMA网络通讯单元、CDMA2000网络通讯单元、TD-SCDMA网络通讯单元中的一种或者多种。

优选的,获得待更新版本软件内容的步骤,包括:

比较所述待更新版本软件和所述待升级终端已安装的版本软件的差异数据;

根据所述差异数据生成差分数据包,将所述差分数据包和功能配置文件进行合并处理;

将所述合并的结果确定为待更新版本软件内容。

优选的,所述待升级终端接收所述升级软件的更新数据,使用所述安装数据对所述待升级软件的备份程序进行升级操作,包括:

所述待升级终端与所述软件升级平台进行通讯连接;

所述待升级终端备份所述已安装软件并重启;

启动所述待升级终端的升级处理,并更新软件配置;

使用所述安装数据对所述待升级软件的备份程序进行升级操作。

优选的,所述更新数据,至少包括:

安装数据、安装标识和安装模式。

优选的,在所述待升级终端通过短信将所述确定是否需要升级的结果发送至所述软件升级平台之后,所述方法还包括:

判断所述待更新版本信息是否与所述待升级终端相匹配;

如果否,重新返回软件升级平台通过短信发送单元将软件待更新版本信息和软件升级包的地址发送至待升级终端的步骤执行。

优选的,所述待升级终端接收所述待更新版本信息并与所述待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级,包括:

当所述待升级终端接收到的所述待更新版本信息为两个及两个以上版本时,确定最高版本或者确定最新发布的版本;

将所述最高版本或者确定最新发布的版本并与所述待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级。

优选的,所述使用所述安装数据对所述待升级软件的备份程序进行升级操作,包括:

还原所述待升级终端所述已安装软件的第一配置数据;

更新待更新版本的第二配置数据;

读取并运行所述第一配置数据和所述第二,设置升级结果标志;

根据所述升级结果标志,设置所述待升级终端的状态,并完成升级过程。

一种软件升级装置,所述装置包括:

发送单元,用于软件升级平台通过短信发送单元将软件待更新版本信息和软件升级包的地址发送至待升级终端;

比较单元,用于所述待升级终端接收所述待更新版本信息并与所述待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级;

第二发送单元,用于所述待升级终端通过短信将所述确定是否需要升级的结果发送至所述软件升级平台;

传输单元,用于当所述软件升级平台判断为需要进行软件升级的条件下,则通过网络数据传输单元传输所述软件升级的更新数据;

升级单元,用于所述待升级终端接收所述升级软件的更新数据,使用所述安装数据对所述待升级软件的备份程序进行升级操作;

中断单元,用于当所述升级操作异常时,判断所述升级操作是否需要中断;

保存单元,用于在所述中断单元需要进行终端时,获取升级的进度,并对所述升级操作后的更新数据进行保存;

更新单元,用于根据所述升级操作的进度,对所述软件升级进度信息进行更新。

当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种软件升级方法的流程示意图。

图2为本发明实施例提供的获得待更新版本软件内容的流程示意图。

图3为本发明实施例提供的一种软件升级装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为解决上述技术问题,本发明实施例提供了一种。

图1为本发明实施例提供的一种软件升级方法的流程示意图,所述方法包括步骤:

S101,软件升级平台通过短信发送单元将软件待更新版本信息和软件升级包的地址发送至待升级终端;

S102,待升级终端接收待更新版本信息并与所述待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级;

S103,待升级终端通过短信将确定是否需要升级的结果发送至软件升级平台;

S104,当软件升级平台判断为需要进行软件升级的条件下,则通过网络数据传输单元传输软件升级的更新数据;

S105,待升级终端接收升级软件的更新数据,使用安装数据对待升级软件的备份程序进行升级操作;

S106,当升级操作异常时,判断升级操作是否需要中断;在判断需要中断的情况下,执行S107。

S107,获取升级的进度,并对升级操作后的更新数据进行保存;

S108,根据升级操作的进度,对软件升级进度信息进行更新。

待升级终端发送现有的软件版本等信息,确认现有的软件是否需要更新。具体的来说,升级指令有两种产生方式,一种是用户点击待升级软件的安装包,产生升级指令。另一种是,待升级终端检测到软件有新的版本,产生软件升级提示指令,待升级终端接收待更新版本信息并与所述待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级,级确定升级后产生软件升级指令。待升级终端接收软件升级平台通过网络数据传输单元传输软件升级的更新数据。通常情况,当现有软件的版本低于服务器端的版本时需要进行更新升级,而在实际应用中,需要用户根据自身的实际情况决定是否需要更新。此处列举不作具体限定。如果有高版本直接就升级,可能会导致终端无法适应新的版本,即产生不兼容的现象。

在步骤S106中,如果判断需要终端,则转入步骤S107;如果不需要则不对当前版本的软件进行处理。S107中,获取升级的进度,并对升级操作后的更新数据进行保存,升级动作是在备份程序中进行。这样既不影响软件存储区域的安装文件,又可以进行软件的升级安装。当安装完成后,直接用备份区的安装文件替换原存储区域,可以全部替换,也可以按需替换。具体实现为现有技术本发明实施例在此不对其进行赘述。

当直接安装时可能会出现网络异常导致的中断,也有可能是终端系统等故障,导致的异常终端;先进行判断是否需要终止升级操作,如果需要,获取目前为止的升级进度,并保存已经升级的数据。当下次需要更新时,接着上次的进度继续进行升级。这样,升级进度信息记录着软件升级完成一半时发生中断,在下次升级时从中间位置继续获取软件安装数据,这样无需从头升级,加快了软件升级的速度。

终端使用该软件安装数据对软件程序备份进行升级操作。在此升级过程中,不会对待升级软件存储区域中存储的软件程序造成影响,只会读取安装数据对备份软件存储区域中存储的软件程序备份进行覆盖,因此即使升级失败,也可以运行待升级软件存储区域中存储的软件程序,这样有效的保障了软件的正常运行,不会给用户使用带来影响。

这样即完成了本优选实施例的终端软件升级方法的软件升级过程。

进一步的,网络数据传输单元为GPRS网络通讯单元、EDGE网络通讯单元、CDMA网络通讯单元、WCDMA网络通讯单元、CDMA2000网络通讯单元、TD-SCDMA网络通讯单元中的一种或者多种。

图2为本发明实施例提供的获得待更新版本软件内容的流程示意图。

进一步的,获得待更新版本软件内容的步骤,包括:

S201,比较待更新版本软件和待升级终端已安装的版本软件的差异数据;

S202,根据差异数据生成差分数据包,将差分数据包和功能配置文件进行合并处理;

S203,将合并的结果确定为待更新版本软件内容。

进一步的,待升级终端接收升级软件的更新数据,使用所述安装数据对所述待升级软件的备份程序进行升级操作,包括:

待升级终端与软件升级平台进行通讯连接;

待升级终端备份已安装软件并重启;

启动待升级终端的升级处理,并更新软件配置;

使用安装数据对待升级软件的备份程序进行升级操作。

进一步的,更新数据,至少包括:

安装数据、安装标识和安装模式。

进一步的,在待升级终端通过短信将确定是否需要升级的结果发送至软件升级平台之后,方法还包括:

判断待更新版本信息是否与待升级终端相匹配;

如果否,重新返回软件升级平台通过短信发送单元将软件待更新版本信息和软件升级包的地址发送至待升级终端的步骤执行。

进一步的,,待升级终端接收待更新版本信息并与待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级,包括:

当待升级终端接收到的待更新版本信息为两个及两个以上版本时,确定最高版本或者确定最新发布的版本;

将最高版本或者确定最新发布的版本并与待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级。

进一步的,使用安装数据对待升级软件的备份程序进行升级操作,包括:

还原待升级终端已安装软件的第一配置数据;

更新待更新版本的第二配置数据;

读取并运行第一配置数据和第二,设置升级结果标志;

根据升级结果标志,设置待升级终端的状态,并完成升级过程。

图3为本发明实施例提供的一种软件升级装置的结构示意图,装置包括:

第一发送单元301,用于软件升级平台通过短信发送单元将软件待更新版本信息和软件升级包的地址发送至待升级终端;

比较单元302,用于待升级终端接收待更新版本信息并与待升级终端已安装的版本进行比较,并根据比较结果确定是否需要升级;

第二发送单元303,用于待升级终端通过短信将确定是否需要升级的结果发送至软件升级平台;

传输单元304,用于当软件升级平台判断为需要进行软件升级的条件下,则通过网络数据传输单元传输软件升级的更新数据;

升级单元305,用于待升级终端接收升级软件的更新数据,使用安装数据对待升级软件的备份程序进行升级操作;

中断单元306,用于当升级操作异常时,判断升级操作是否需要中断;

保存单元307,用于在中断单元需要进行终端时,获取升级的进度,并对升级操作后的更新数据进行保存;

更新单元308,用于根据升级操作的进度,对软件升级进度信息进行更新。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1