一种升级方法、装置、设备和存储介质与流程

文档序号:25212257发布日期:2021-05-28 14:07阅读:85来源:国知局
一种升级方法、装置、设备和存储介质与流程

本申请涉及计算机技术领域,具体地涉及一种升级方法、装置、设备和存储介质。



背景技术:

随着通信技术的发展,终端设备上运行的软件也日益复杂。终端设备部署后,由于自身缺陷的修复,产品功能的修改等原因,使得终端设备的软件通常存在升级的需求。

终端设备在部署后,由于不同地域网络信号差异、不同运营商网络配置差异、不同终端内部工作数据差异等原因,使得每个终端设备的工作状态会存在较大差异。因此,新版本软件在被推广升级之前,无法做到提前遍历验证可能遇到的所有工作场景,版本升级存在验证不充分的风险。风险因素包括但不限于:对某种环境或网络配置敏感、对某些设置/工作模式/缓存数据敏感、性能改变(可能引起某些干扰场景下通信异常,或某些边缘部署超出灵敏度范围)等。最终可能导致终端设备无法正常启动、搜不到通信网络、无法在通信网络注册、无法进行数据通信等问题。

若发生上述问题,终端设备则无法恢复与网络的正常通信,造成终端设备“失联”。这种情况下,只能由人工到现场解决问题。对于部分设备,例如物联网类设备,经常会被部署在偏远地区或人员不易接触的场所,人工现场解决问题难度很大。



技术实现要素:

有鉴于此,本申请提供一种升级方法、装置、设备和存储介质,以利于解决现有技术中终端设备升级后发生异常,不便于修复的问题。

第一方面,本申请实施例提供了一种升级方法,包括:将第一版本软件备份,所述第一版本软件为升级前的软件版本;运行第二版本软件,所述第二版本软件为所述第一版本软件的升级版本;若运行所述第二版本软件后存在异常事件,则运行备份的所述第一版本软件。

优选地,在所述将第一版本软件备份之前,还包括:检查服务器设备上是否存在第二版本软件,所述第二版本软件为所述第一版本软件的升级版本;若所述服务器设备上存在所述第二版本软件,则下载所述第二版本软件。

优选地,在所述将第一版本软件备份之前,还包括:接收服务器设备发送的第二版本软件推送信息,所述第二版本软件推送信息用于表征服务器设备上存在第二版本软件;下载所述第二版本软件。

优选地,还包括:若运行所述第二版本软件后存在异常事件,则设置并记录错误标志信息。

优选地,在所述设置并存储错误标志信息后,还包括:向服务器设备发送所述错误标志信息。

优选地,在向服务器设备发送所述错误标志信息后,还包括:删除所述错误标志信息,以及所述第一版本软件的备份。

优选地,所述异常事件包括以下事件中的一种或其组合:不能正常启动;不能搜索到网络;不能在网络上注册;不能访问服务器设备。

第二方面,本申请实施例提供了一种升级装置,包括:备份模块,用于将第一版本软件备份,所述第一版本软件为升级前的软件版本;第一运行模块,用于运行第二版本软件,所述第二版本软件为所述第一版本软件的升级版本;第二运行模块,用于若运行所述第二版本软件后存在异常事件,则运行备份的所述第一版本软件。

优选地,所述装置还包括:检查模块,用于检查服务器设备上是否存在第二版本软件,所述第二版本软件为所述第一版本软件的升级版本;第一下载模块,用于若所述服务器设备上存在所述第二版本软件,则下载所述第二版本软件。

优选地,所述装置还包括:接收模块,用于接收服务器设备发送的第二版本软件推送信息,所述第二版本软件推送信息用于表征服务器设备上存在第二版本软件;第二下载模块,用于下载所述第二版本软件。

第三方面,本申请实施例提供了一种终端设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述终端设备执行时,使得所述终端设备执行第一方面任意一项所述的方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行第一方面任意一项所述的方法。

在本申请实施例中,在软件升级后增加工作状态检查机制,若发现存在异常事件,则回退至备份版本,避免由于软件升级导致终端设备失联等问题。

附图说明

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

图1为本申请实施例提供的一种应用场景示意图;

图2为本申请实施例提供的一种升级方法流程示意图;

图3为本申请实施例提供的另一种升级方法流程示意图;

图4为本申请实施例提供的一种升级装置的结构示意图;

图5为本申请实施例提供的一种终端设备的结构示意图。

具体实施方式

为了更好的理解本申请的技术方案,下面结合附图对本申请实施例进行详细描述。

应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,甲和/或乙,可以表示:单独存在甲,同时存在甲和乙,单独存在乙这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

在对本申请实施例进行具体介绍之前,首先对本申请所涉及的场景进行简单介绍。

参见图1,为本申请实施例提供的一种应用场景示意图。在图1中示出了终端设备101和服务器设备103,服务器设备103和终端设备101通过有线或无线通信网络102互联,进行信息传输。该通信网络102可以是局域网,也可以是通过中继(relay)设备转接的广域网。当该通信网络102为局域网时,示例性的,该通信网络102可以是wifi热点网络、wifip2p网络、蓝牙网络、zigbee网络或近场通信(nearfieldcommunication,nfc)网络等近距离通信网络102。当该通信网络102为广域网时,示例性的,该通信网络102可以是第三代移动通信技术(3rd-generationwirelesstelephonetechnology,3g)网络、第四代移动通信技术(the4thgenerationmobilecommunicationtechnology,4g)网络、第五代移动通信技术(5th-generationmobilecommunicationtechnology,5g)网络、未来演进的公共陆地移动网络(publiclandmobilenetwork,plmn)或因特网等。

终端设备101可以为物联网设备,当然本申请对终端设备101的具体形式不作限制,例如其可以为手机、平板电脑、个人计算机(personalcomputer,pc)、个人数字助理(personaldigitalassistant,pda)、智能手表、上网本、可穿戴电子设备、增强现实技术(augmentedreality,ar)设备、虚拟现实(virtualreality,vr)设备、车载设备、智能汽车、智能音响、机器人、智能眼镜等。

随着通信技术的发展,终端设备上运行的软件也日益复杂。终端设备部署后,由于自身缺陷的修复,产品功能的修改等原因,使得终端设备的软件通常存在升级的需求。

移动终端的空中下载软件升级(firmwareover-the-air,fota)是指通过云端升级技术,为具有连网功能的设备:例如手机、平板电脑、便携式媒体播放器、移动互联网设备等提供固件升级服务,用户使用网络以按需、易扩展的方式获取智能终端系统升级包,并通过fota进行云端升级,完成系统修复和优化。

终端设备在部署后,由于不同地域网络信号差异、不同运营商网络配置差异、不同终端内部工作数据差异等原因,使得每个终端设备的工作状态会存在较大差异。因此,新版本软件在被推广升级之前,无法做到提前遍历验证可能遇到的所有工作场景,版本升级存在验证不充分的风险,最终可能导致终端设备无法正常启动、搜不到通信网络、无法在通信网络注册、无法进行数据通信等问题。升级新版本后一旦发生前述问题,终端设备现有的fota机制将无法自主回退到可用版本,也就无法恢复与网络的正常通信,造成通信终端“失联”。终端设备一旦发生失联,一般只能由人工到现场解决问题。但是,物联网类产品经常会被部署在偏远地区或人员不易接触的场所,人工现场解决问题难度很大。

基于此,本申请实施例提供了一种升级方法,该方法可应用于图1所示的终端设备。

参见图2,为本申请实施例提供的一种升级方法流程示意图,如图2所示,其主要包括以下步骤。

步骤s201:将第一版本软件备份,所述第一版本软件为升级前的软件版本。

可理解,所述第一版本软件可以为终端设备当前运行的软件版本,即工作版本。在对第一版本软件进行升级前,首先将第一版本软件备份,防止升级后存在异常问题。

步骤s202:运行第二版本软件,所述第二版本软件为所述第一版本软件的升级版本。

可理解,所述第二版本软件和所述第一版本软件为同一类型软件,只是其版本不同。其中,所述第二版本软件为所述第一版本软件的升级版本。

在将第一版本软件备份后,运行第二版本软件,实现软件升级。

步骤s203:若运行所述第二版本软件后存在异常事件,则运行备份的所述第一版本软件。

具体地,第二版本软件运行后,判断终端设备是否存在异常事件。该异常事件可以为:不能正常启动;不能搜索到网络;不能在网络上注册;不能访问服务器设备等。可理解,本申请实施例对异常事件的具体内容不做限制,本领域技术人员可以根据实际需要进行相应补充或修改,其均应当落入本申请的保护范围之内。

其中,若不存在异常事件,则正常运行第二版本软件,完成软件升级;若存在异常事件,则回退到第一版本软件,重新运行第一版本软件,避免由于软件升级导致终端设备“失联”等问题。

在本申请实施例中,在软件升级后增加工作状态检查机制,若发现存在异常事件,则回退至备份版本,避免由于软件升级导致终端设备失联等问题。

参见图3,为本申请实施例提供的另一种升级方法流程示意图,如图3所示,其主要包括以下步骤。

步骤s301:检查服务器设备上的第二版本软件。

具体地,服务器设备可以为版本服务器,当软件存在新版本后,会存储在该版本服务器中,所述第二版本软件即新版本软件。

终端设备可以按照预设的时间周期检查服务器设备上是否存在新版本软件。

步骤s302:判断是否存在第二版本软件。

判断服务器设备上是否存在第二版本软件,即判断服务器设备上是否存在新版本软件,若存在则进入步骤s303;否则,在预设的时间周期后再次判断服务器设备上是否存在新版本软件。

在一种可选实施例中,当服务器设备上存在新版本软件后,也可以由服务器设备主动向终端设备发送第二版本软件推送信息,所述第二版本软件推送信息用于表征服务器设备上存在第二版本软件,以便终端设备可以及时进行软件的升级。

步骤s303:下载第二版本软件。

当判断服务器设备上存在第二版本软件后,下载第二版本软件至终端设备,以便在后续步骤中进行版本升级。需要指出的是,本申请实施例对软件的具体下载方式不作限定。

步骤s304:将第一版本软件备份。

为了防止软件升级后,由于各种原因造成终端设备“失联”。本申请实施例在将软件更新为第二版本软件前,将第一版本软件备份,以便回退至升级前版本。

步骤s305:运行第二版本软件。

将第一版本软件备份后,运行第二版本软件。可理解,此时第一版本软件只是作为备份数据存储,并未运行。

步骤s306:终端设备搜索无线网络。

在将软件版本升级为第二版本软件后,执行工作状态检查机制。在本步骤中,终端设备搜索无线网络。

步骤s307:是否可以搜索到无线网络。

终端设备判断是否可以搜索到无线网络,若可以搜索到无线网络,说明无线网络的搜索功能正常,则进入步骤s308继续下一项检查;若终端设备不能搜索到无线网络,说明无线网络的搜索功能异常,则进入步骤s316,以便回将软件退至升级前版本。

步骤s308:终端设备在无线网络上注册。

搜索无线网络功能检查完成后,终端设备继续检查无线网络注册功能。

步骤s309:是否可以注册到无线网络。

终端设备判断是否可以在无线网络上注册,若可以在无线网络上注册,说明在无线网络上注册的功能正常,则进入步骤s310继续下一项检查;若终端设备不能在无线网络上注册,说明在无线网络上注册功能异常,则进入步骤s316,以便回将软件退至升级前版本。

步骤s310:访问服务器设备。

无线网络注册功能检查完成后,终端设备继续检查访问服务器设备的功能。

步骤s311:是否可以访问服务器设备。

终端设备判断是否可以访问服务器设备,若可以访问服务器设备,说明访问服务器设备功能正常,则进入步骤s312继续下一项检查;若终端设备不能访问服务器设备,说明访问服务器设备功能异常,则进入步骤s316,以便回将软件退至升级前版本。

步骤s312:检查错误标志信息。

若上述检查过程中存在异常事件,则会记录错误标志信息。因此,在本步骤中检查错误标志信息,以便存在错误标志信息时,将相关信息上报至服务器设备。

步骤s313:错误标志信息是否被设置。

终端设备判断错误标志信息是否被设置,若错误标志信息被设置,说明述检查过程中存在异常事件,则进入步骤s314;否则,升级结束。

可理解,为了节省终端设备的存储空间,在升级结束后,可以删除备份的第一版本软件,以便释放存储空间。

步骤s314:向服务器设备上报第二软件版本的出错信息。

若错误标志信息被设置,说明检查过程中存在异常事件,则向服务器设备上报第二软件版本的出错信息,以便及时对第二版本软件存在的问题进行修正。

步骤s315:清除错误标志。

在将第二软件版本的出错信息上报至服务器设备后,终端设备清除错误标志。

步骤s316:设置并存储错误标志信息。

在检查过程中,若任何一个环节存在异常事件,例如不能搜索到网络、不能在网络上注册、不能访问服务器设备等,均进入步骤s316设置并存储错误标志信息。

步骤s317:运行第一版本软件。

完成错误标志信息的设置及存储后,重新运行备份的第一版本软件,即回退至升级前的软件版本,防止终端设备由于升级造成失联。

在本申请实施例中,在软件升级后增加工作状态检查机制,若发现存在异常事件,则回退至备份版本,避免由于软件升级导致终端设备失联等问题。

与上述方法实施例相对应,本申请还提供了一种装置实施例。

参见图4,为本申请实施例提供的一种升级装置的结构示意图。如图4所示,其主要包括以下模块。

备份模块401,用于将第一版本软件备份,所述第一版本软件为升级前的软件版本。

第一运行模块402,用于运行第二版本软件,所述第二版本软件为所述第一版本软件的升级版本。

第二运行模块403,用于若运行所述第二版本软件后存在异常事件,则运行备份的所述第一版本软件。

在一种可选实施例中,所述装置还包括检查模块,用于检查服务器设备上是否存在第二版本软件,所述第二版本软件为所述第一版本软件的升级版本;第一下载模块,用于若所述服务器设备上存在所述第二版本软件,则下载所述第二版本软件。

在一种可选实施例中,所述装置还包括接收模块,用于接收服务器设备发送的第二版本软件推送信息,所述第二版本软件推送信息用于表征服务器设备上存在第二版本软件;第二下载模块,用于下载所述第二版本软件。

与上述方法实施例相对应,本申请还提供了一种终端设备。

参见图5,为本申请实施例提供的一种终端设备的结构示意图,所述终端设备500可以包括:一个或一个以上处理器501、存储器502及通信单元503。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的结构并不构成对本申请实施例的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

其中,所述通信单元503,用于建立通信信道,从而使所述存储设备可以与其它设备进行通信。接收其他设备发送的数据或者向其他设备发送数据。

所述处理器501,为存储设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分,通过运行或执行存储在存储器502内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行终端设备的各种功能和/或处理数据。所述处理器可以由集成电路(integratedcircuit,ic)组成,例如可以由单颗封装的ic所组成,也可以由连接多颗相同功能或不同功能的封装ic而组成。

所述存储器502,用于存储处理器501的执行指令,存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

当存储器502中的执行指令由处理器501执行时,使得终端设备500能够执行上述方法实施例中的部分或全部步骤。

具体实现中,本申请还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本申请提供的呼叫方法的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。

本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端设备实施例和终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。

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