CN115469904A - Ota升级方法及装置 - Google Patents
Ota升级方法及装置 Download PDFInfo
- Publication number
- CN115469904A CN115469904A CN202211054896.2A CN202211054896A CN115469904A CN 115469904 A CN115469904 A CN 115469904A CN 202211054896 A CN202211054896 A CN 202211054896A CN 115469904 A CN115469904 A CN 115469904A
- Authority
- CN
- China
- Prior art keywords
- target
- system version
- upgrade
- upgrading
- optimal
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开一种OTA升级方法及装置,涉及通信技术领域。本申请的方法包括:获取目标终端设备对应的当前系统版本标识和最新系统版本标识;当根据当前系统版本标识和最新系统版本标识确定当前系统版本和最新系统版本之间存在一个或多个中间系统版本时,根据当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径;生成第一最优升级路径对应的目标升级列表,其中,第一最优升级路径对应的目标升级列表中记录有每个第一目标差分升级包对应的系统版本标识和URL地址;将第一最优升级路径对应的目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和第一最优升级路径对应的目标升级列表对系统进行差分升级。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种OTA升级方法及装置。
背景技术
OTA(Over the Air,空中下载)技术是一种通过无线网络进行数据下载的技术。其中,OTA技术通常应用于智能手机、平板电脑、智能穿戴设备、智能家居设备等终端设备的系统升级过程中。
目前,在采用OTA技术对终端设备的系统进行升级时,通常是基于差分升级包对终端设备的系统进行差分升级,即OTA服务器根据终端设备对应的当前系统版本和最新系统版本查找差分升级包,并将差分升级包对应的URL地址发送给终端设备,终端设备根据OTA服务器发送的URL地址下载差分升级包,并根据差分升级包对自身系统进行差分升级,以及在重启后,将升级后的系统版本标识发送给OTA服务器,以便OTA服务器获知终端设备系统升级后的系统版本。
然而,当终端设备对应的当前系统版本和最新系统版本之间相差多个系统版本,即当前系统版本和最新系统版本之间存在多个差分升级包时,OTA服务器和终端设备需要多次重复上述操作,才能将终端设备的系统升级至最新系统版本,因此,当终端设备对应的当前系统版本和最新系统版本之间相差多个系统版本时,基于差分升级包对终端设备的系统进行差分升级的升级效率较低。
发明内容
本申请实施例提供一种OTA升级方法及装置,主要目的在于当终端设备对应的当前系统版本和最新系统版本之间相差多个系统版本时,提高基于差分升级包对终端设备的系统进行差分升级的升级效率。
为解决上述技术问题,本申请实施例提供如下技术方案:
第一方面,本申请提供了一种OTA升级方法,所述方法应用于OTA服务器,所述方法包括:
获取目标终端设备对应的当前系统版本标识和最新系统版本标识;
当根据所述当前系统版本标识和所述最新系统版本标识确定所述当前系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,其中,所述第一最优升级路径包含多个第一目标差分升级包;
生成所述第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
可选的,所述根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,包括:
根据预置算法、所述当前系统版本标识、所述最新系统版本标识和每个中间系统版本标识确定所述目标终端设备对应的多个升级路径;
根据每个所述升级路径包含的每个差分升级包对应的数据量大小,确定每个所述升级路径对应的总数据量大小;
将多个所述升级路径中总数据量最小的升级路径确定为所述第一最优升级路径。
可选的,所述根据预置算法、所述当前系统版本标识、所述最新系统版本标识和每个中间系统版本标识确定所述目标终端设备对应的多个升级路径,包括:
根据所述当前系统版本标识、所述最新系统版本标识和每个所述中间系统版本标识确定所述当前系统版本与所述最新系统版本之间存在的多个差分升级包;
根据所述预置算法、所述当前系统版本标识、所述最新系统版本标识、每个所述中间系统版本标识和多个所述差分升级包确定所述目标终端设备对应的多个升级路径。
可选的,在所述将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,所述方法还包括:
接收所述目标终端设备发送的升级失败消息,其中,所述升级失败消息中包含目标中间系统版本标识,目标中间系统版本为所述目标终端设备升级失败前系统对应的版本;
当根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标中间系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,其中,所述第二最优升级路径包含多个第二目标差分升级包;
生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;
将所述第二最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
可选的,在所述将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,所述方法还包括:
接收所述目标终端设备发送的升级成功消息;
将所述目标终端设备对应的当前系统版本标识更新为所述最新系统版本标识。
第二方面,本申请还提供了一种OTA升级方法,所述方法应用于目标终端设备,所述方法包括:
接收OTA服务器发送的第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径包含多个第一目标差分升级包,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级;
当系统成功升级至最新系统版本时,重启系统。
可选的,所述根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级,包括:
根据每个所述第一目标差分升级包对应的系统版本标识确定每个所述第一目标差分升级包对应的下载顺序;
根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
可选的,所述根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级包括:
根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包;
其中,在下载获得任意一个第一目标差分升级包后,根据所述第一目标差分升级包对系统进行差分升级,并判断是否升级成功;
若升级成功,则根据每个所述第一目标差分升级包对应的下载顺序和URL地址,下载下一个第一目标差分升级包;
若升级失败,且升级失败原因并非为设备断电,则向所述OTA服务器发送携带有目标中间系统版本标识的升级失败消息,以便所述OTA服务器根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,并生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径包含多个第二目标差分升级包,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;接收所述OTA服务器发送的第二最优升级路径对应的目标升级列表;根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
可选的,在所述系统成功升级至最新系统版本,重启系统之后,所述方法还包括:
向所述OTA服务器发送升级成功消息。
第三方面,本申请还提供了一种OTA升级装置,所述装置应用于OTA服务器,所述装置包括:
获取单元,用于获取目标终端设备对应的当前系统版本标识和最新系统版本标识;
第一确定单元,用于当根据所述当前系统版本标识和所述最新系统版本标识确定所述当前系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,其中,所述第一最优升级路径包含多个第一目标差分升级包;
第一生成单元,用于生成所述第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
第一发送单元,用于将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
可选的,所述第一确定单元进一步用于:根据预置算法、所述当前系统版本标识、所述最新系统版本标识和每个中间系统版本标识确定所述目标终端设备对应的多个升级路径;根据每个所述升级路径包含的每个差分升级包对应的数据量大小,确定每个所述升级路径对应的总数据量大小;将多个所述升级路径中总数据量最小的升级路径确定为所述第一最优升级路径。
可选的,所述第一确定单元具体用于根据所述当前系统版本标识、所述最新系统版本标识和每个所述中间系统版本标识确定所述当前系统版本与所述最新系统版本之间存在的多个差分升级包;根据所述预置算法、所述当前系统版本标识、所述最新系统版本标识、每个所述中间系统版本标识和多个所述差分升级包确定所述目标终端设备对应的多个升级路径。
可选的,所述装置还包括:
第一接收单元,用于在所述第一发送单元将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,接收所述目标终端设备发送的升级失败消息,其中,所述升级失败消息中包含目标中间系统版本标识,目标中间系统版本为所述目标终端设备升级失败前系统对应的版本;
第二确定单元,用于当根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标中间系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,其中,所述第二最优升级路径包含多个第二目标差分升级包;
第二生成单元,用于生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;
第二发送单元,用于将所述第二最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
可选的,所述装置还包括:
第二接收单元,用于在所述第一发送单元将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,接收所述目标终端设备发送的升级成功消息;
更新单元,用于将所述目标终端设备对应的当前系统版本标识更新为所述最新系统版本标识。
第四方面,本申请还提供了一种OTA升级装置,所述装置应用于目标终端设备,所述装置包括:
接收单元,用于接收OTA服务器发送的第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径包含多个第一目标差分升级包,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
升级单元,用于根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级;
重启单元,用于当系统成功升级至最新系统版本时,重启系统。
可选的,所述升级单元进一步用于:根据每个所述第一目标差分升级包对应的系统版本标识确定每个所述第一目标差分升级包对应的下载顺序;根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
可选的,所述升级单元具体用于根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包;
其中,在下载获得任意一个第一目标差分升级包后,根据所述第一目标差分升级包对系统进行差分升级,并判断是否升级成功;
若升级成功,则根据每个所述第一目标差分升级包对应的下载顺序和URL地址,下载下一个第一目标差分升级包;
若升级失败,且升级失败原因并非为设备断电,则向所述OTA服务器发送携带有目标中间系统版本标识的升级失败消息,以便所述OTA服务器根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,并生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径包含多个第二目标差分升级包,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;接收所述OTA服务器发送的第二最优升级路径对应的目标升级列表;根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
可选的,所述装置还包括:
发送单元,用于在系统成功升级至最新系统版本,所述重启单元重启系统之后,向所述OTA服务器发送升级成功消息。
第五方面,本申请的实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的OTA升级方法;或执行第二方面所述的OTA升级方法。
第六方面,本申请的实施例提供了一种OTA升级装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行第一方面所述的OTA升级方法;或执行第二方面所述的OTA升级方法。
借由上述技术方案,本申请提供的技术方案至少具有下列优点:
本申请提供一种OTA升级方法及装置,在本申请中,OTA服务器是根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的最优升级路径,并生成该最优升级路径对应的目标升级列表,以及将该目标升级列表发送至目标终端设备,从而使得目标终端设备根据接收到的目标升级列表便可将系统从当前系统版本升级至最新系统版本,因此,可以有效提高基于差分升级包对目标终端设备进行差分升级的升级效率。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过参考附图阅读下文的详细描述,本申请示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施方式,相同或对应的标号表示相同或对应的部分,其中:
图1示出了本申请实施例提供的第一种OTA升级方法流程图;
图2示出了本申请实施例提供的第二种OTA升级方法流程图;
图3示出了本申请实施例提供的第三种OTA升级方法流程图;
图4示出了本申请实施例提供的第四种OTA升级方法流程图;
图5示出了本申请实施例提供的第一种OTA升级装置的组成框图;
图6示出了本申请实施例提供的第二种OTA升级装置的组成框图;
图7示出了本申请实施例提供的第三种OTA升级装置的组成框图;
图8示出了本申请实施例提供的第四种OTA升级装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施方式。虽然附图中显示了本申请的示例性实施方式,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。
第一方面,本申请实施例提供了一种OTA升级方法,如图1所示,该方法应用于OTA服务器,该方法包括:
101、获取目标终端设备对应的当前系统版本标识和最新系统版本标识。
其中,目标终端设备为当前在线的终端设备;其中,OTA服务器中存储有目标终端设备对应的当前系统版本标识和最新系统版本标识,目标终端设备对应的当前系统版本标识用于唯一标识目标终端设备对应的当前系统版本,目标终端设备对应的当前系统版本为目标终端设备当前运行的系统的版本;目标终端设备对应的最新系统版本标识用于唯一标识目标终端设备对应的最新系统版本,目标终端设备对应的最新系统版本为目标终端设备的系统可以升级的最新版本。
其中,在本申请实施例中,各个步骤中的执行主体为OTA服务器。
在本申请实施例中,当确定某个终端设备为当前在线的终端设备时,OTA服务器便会将该终端设备确定为目标终端设备,并获取目标终端设备对应的当前系统版本标识和最新系统版本标识。
102、当根据当前系统版本标识和最新系统版本标识确定当前系统版本和最新系统版本之间存在一个或多个中间系统版本时,根据当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径。
其中,OTA服务器中记录有目标终端设备对应的所有系统版本的系统版本标识,多个系统版本标识按照其对应的系统版本的先后顺序排序;其中,第一最优升级路径包含多个第一目标差分升级包。
在本申请实施例中,OTA服务器在获取得到目标终端设备对应的当前系统版本标识和最新系统版本标识后,便可根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的当前系统版本和最新系统版本之间是否存在一个或多个中间系统版本;当根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的当前系统版本和最新系统版本之间存在一个或多个中间系统版本时,目标终端设备对应的当前系统版本到最新系统版本之间可能有多条升级路径,因此,OTA服务器需要根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的最优升级路径(即第一最优升级路径)。
具体的,在本步骤中,OTA服务器可以根据目标终端设备对应的各个系统版本的系统版本标识、当前系统版本标识和最新系统版本标识,确定目标终端设备对应的当前系统版本和最新系统版本之间是否存在一个或多个中间系统版本,即根据目标终端设备对应的各个系统版本的系统版本标识、当前系统版本标识和最新系统版本标识,确定目标终端设备对应的当前系统版本和最新系统版本是否为相邻的两个系统版本,若是,则确定目标终端设备对应的当前系统版本和最新系统版本之间不存在中间系统版本,若否,则确定目标终端设备对应的当前系统版本和最新系统版本之间存在中间系统版本,但不限于此。
需要进行说明的是,在实际应用过程中,当目标终端设备对应的当前系统版本和最新系统版本之间不存在中间系统版本(即目标终端设备对应的当前系统版本和最新系统版本为相邻的两个系统版本)时,可以确定目标终端设备对应的当前系统版本到最新系统版本之间只有一条升级路径,即目标终端设备对应的当前系统版本与最新系统版本之间只存在一个差分升级包,此时,OTA服务器可以直接将该差分升级包对应的URL地址发送至目标终端设备,以便目标终端设备根据该差分升级包对应的URL地址下载该差分升级包,并根据该差分升级包对系统进行差分升级。
103、生成第一最优升级路径对应的目标升级列表。
在本申请实施例中,OTA服务器在根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径后,便可根据第一最优升级路径包含的多个第一目标差分升级包,生成第一最优升级路径对应的目标升级列表,其中,第一最优升级路径对应的目标升级列表中记录有每个第一目标差分升级包对应的系统版本标识和URL地址,其中,对于任意一个第一目标差分升级包而言,其对应的系统版本标识为目标终端设备使用该第一目标差分升级包对系统进行差分升级前,系统版本对应的系统版本标识(或为目标终端设备使用该第一目标差分升级包对系统进行差分升级后,系统版本对应的系统版本标识),例如,第一目标差分升级包1为将目标终端设备的系统从系统版本A升级至系统版本B所需要使用的差分升级包,第一目标差分升级包2为将目标终端设备的系统从系统版本B升级至系统版本C所需要使用的差分升级包,第一目标差分升级包3为将目标终端设备的系统从系统版本C升级至系统版本D所需要使用的差分升级包,则第一目标差分升级包1对应的系统版本标识为系统版本A对应的系统版本标识,第一目标差分升级包2对应的系统版本标识为系统版本B对应的系统版本标识,第一目标差分升级包3对应的系统版本标识为系统版本C对应的系统版本标识(或第一目标差分升级包1对应的系统版本标识为系统版本B对应的系统版本标识,第一目标差分升级包2对应的系统版本标识为系统版本C对应的系统版本标识,第一目标差分升级包3对应的系统版本标识为系统版本D对应的系统版本标识),本申请实施例对此不进行具体限定。
104、将第一最优升级路径对应的目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级。
在本申请实施例中,OTA服务器在生成第一最优升级路径对应的目标升级列表后,便可将该目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和该目标升级列表中记录的每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级,即目标终端设备在根据每个第一目标差分升级包对应的系统版本标识确定每个第一目标差分升级包对应的下载顺序后,先下载第一个第一目标差分升级包,并根据第一个第一目标差分升级包对系统进行差分升级,再下载第二个第一目标差分升级包,并根据第二个第一目标差分升级包对系统进行差分升级…最后下载最后一个第一目标差分升级包,并根据最后一个第一目标差分升级包对系统进行差分升级。
本申请实施例提供一种OTA升级方法,本申请实施例能够在OTA服务器确定目标终端设备当前在线,并根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的当前系统版本和最新系统版本之间存在一个或多个中间系统版本之后,由OTA服务器根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的最优升级路径,并生成该最优升级路径对应的目标升级列表,以及将该目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和该目标升级列表中记录的每个目标差分升级包对应的系统版本标识、URL地址,依次下载每个目标差分升级包,并根据下载的目标差分升级包对系统进行差分升级。由于,在本申请实施例中,OTA服务器是根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的最优升级路径,并生成该最优升级路径对应的目标升级列表,以及将该目标升级列表发送至目标终端设备,从而使得目标终端设备根据接收到的目标升级列表便可将系统从当前系统版本升级至最新系统版本,因此,可以有效提高基于差分升级包对目标终端设备进行差分升级的升级效率。
以下为了更加详细地说明,本申请实施例提供了另一种OTA升级方法,具体如图2所示,该方法应用于OTA服务器,该方法包括:
201、获取目标终端设备对应的当前系统版本标识和最新系统版本标识。
其中,关于步骤201、获取目标终端设备对应的当前系统版本标识和最新系统版本标识,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
202、当根据当前系统版本标识和最新系统版本标识确定当前系统版本和最新系统版本之间存在一个或多个中间系统版本时,根据当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径。
在本申请实施例中,当根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的当前系统版本和最新系统版本之间存在一个或多个中间系统版本时,OTA服务器便需要根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的最优升级路径(即第一最优升级路径)。
具体的,在本步骤中,OTA服务器根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径的具体过程为:
(1)首先,根据预置算法、目标终端设备对应的当前系统版本标识、最新系统版本标识和每个中间系统版本标识确定目标终端设备对应的多个升级路径,即确定将目标终端设备的系统从当前系统版本升级至最新系统版本存在的所有升级路径。
其中,预置算法可以但不限于为Dijkstra算法,每个升级路径中包含多个差分升级包,对于任意一个中间系统版本标识而言,该中间系统版本标识用于唯一标识其对应的中间系统版本。
其中,根据预置算法、目标终端设备对应的当前系统版本标识、最新系统版本标识和每个中间系统版本标识确定目标终端设备对应的多个升级路径的具体过程为:首先,根据目标终端设备对应的当前系统版本标识、最新系统版本标识和每个中间系统版本标识确定目标终端设备对应的当前系统版本与最新系统版本之间存在的多个差分升级包,例如,目标终端设备对应的当前系统版本为系统版本A,最新系统版本为系统版本C,系统版本A与系统版本C之间存在中间系统版本B,差分升级包1为将目标终端设备的系统从系统版本A升级至系统版本B所需要使用的差分升级包,差分升级包2为将目标终端设备的系统从系统版本B升级至系统版本C所需要使用的差分升级包,则差分升级包1和差分升级包2为目标终端设备对应的当前系统版本与最新系统版本之间的差分升级包;其次,根据预置算法、目标终端设备对应的当前系统版本标识、最新系统版本标识、每个中间系统版本标识和多个差分升级包确定目标终端设备对应的多个升级路径。
例如,目标终端设备对应的当前系统版本为系统版本A,最新系统版本为系统版本E,系统版本A与系统版本E之间存在中间系统版本B、中间系统版本C、中间系统版本D,差分升级包1为将目标终端设备的系统从系统版本A升级至系统版本B所需要使用的差分升级包,差分升级包2为将目标终端设备的系统从系统版本B升级至系统版本C所需要使用的差分升级包,差分升级包3为将目标终端设备的系统从系统版本C升级至系统版本D所需要使用的差分升级包,差分升级包4为将目标终端设备的系统从系统版本D升级至系统版本E所需要使用的差分升级包,差分升级包5为将目标终端设备的系统从系统版本B升级至系统版本D所需要使用的差分升级包,差分升级包6为将目标终端设备的系统从系统版本C升级至系统版本E所需要使用的差分升级包,根据预置算法、系统版本A对应的系统版本标识、系统版本B对应的系统版本标识、系统版本C对应的系统版本标识、系统版本D对应的系统版本标识、系统版本E对应的系统版本标识和差分升级包1-差分升级包6,能够确定将目标终端设备系统从当前系统版本(系统版本A)升级至最新系统版本(系统版本E)存在3条升级路径,分别为升级路径1:差分升级包1-差分升级包2-差分升级包3-差分升级包4,升级路径2:差分升级包1-差分升级包5-差分升级包4,升级路径3:差分升级包1-差分升级包2-差分升级包6。
(2)其次,根据每个升级路径包含的每个差分升级包对应的数据量大小,确定每个升级路径对应的总数据量大小,即对于任意一个升级路径而言,对该升级路径包含的每个差分升级包对应的数据量大小进行求和计算,以获得该升级路径对应的总数据量大小。
(3)将多个升级路径中总数据量最小的升级路径确定为第一最优升级路径。
203、生成第一最优升级路径对应的目标升级列表。
其中,关于步骤203、生成第一最优升级路径对应的目标升级列表,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
204、将第一最优升级路径对应的目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级。
其中,关于步骤204、将第一最优升级路径对应的目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
进一步的,在本申请实施例中,在目标终端设备根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级的过程中,当目标终端设备升级失败,且升级失败原因并非为目标终端设备断电时,目标终端设备便会向OTA服务器发送升级失败消息,此时,OTA服务器便可接收得到目标终端设备发送的升级失败消息,其中,升级失败消息中包含目标中间系统版本标识,目标中间系统版本标识用于唯一标识目标中间系统版本,目标中间系统版本为目标终端设备升级失败前系统对应的版本;OTA服务器在接收得到目标终端设备发送的升级失败消息后,便可根据目标终端设备对应的目标中间系统版本标识和最新系统版本标识确定目标终端设备对应的目标中间系统版本和最新系统版本之间是否存在一个或多个中间系统版本,当根据目标终端设备对应的目标中间系统版本标识和最新系统版本标识确定目标终端设备对应的目标中间系统版本和最新系统版本之间存在一个或多个中间系统版本时,OTA服务器便需要根据目标终端设备对应的目标中间系统版本标识和最新系统版本标识确定目标终端设备对应的第二最优升级路径,其中,第二最优升级路径包含多个第二目标差分升级包;并在生成第二最优升级路径对应的目标升级列表后,将所述第二最优升级路径对应的目标升级列表发送至目标终端设备,以便目标终端设备根据预置规则和每个第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个第二目标差分升级包,并根据下载的第二目标差分升级包对系统进行差分升级,其中,第二最优升级路径对应的目标升级列表中记录有每个第二目标差分升级包对应的系统版本标识和URL地址。
需要进行说明的是,OTA服务器根据目标终端设备对应的目标中间系统版本标识和最新系统版本标识确定目标终端设备对应的第二最优升级路径的具体过程,以及OTA服务器生成第二最优升级路径对应的目标升级列表的具体过程,可以参考上述OTA服务器根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径的具体过程及OTA服务器生成第一最优升级路径对应的目标升级列表的具体过程,本申请实施例此处将不再赘述。
205、接收目标终端设备发送的升级成功消息,并将目标终端设备对应的当前系统版本标识更新为最新系统版本标识。
在本申请实施例中,目标终端设备在基于第一最优升级路径对应的目标升级列表将系统从当前系统版本升级至最新系统版本后,便会向OTA服务器发送升级成功消息,此时,OTA服务器便会接收得到目标终端设备发送的升级成功消息;OTA服务器在接收得到目标终端设备发送的升级成功消息后,便可将记录的目标终端设备对应的当前系统版本标识更新为最新系统版本标识。
第二方面,本申请实施例还提供了一种OTA升级方法,如图3所示,该方法应用于目标终端设备,该方法包括:
301、接收OTA服务器发送的第一最优升级路径对应的目标升级列表。
其中,第一最优升级路径为OTA服务器根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定的,第一最优升级路径包含多个第一目标差分升级包,第一最优升级路径对应的目标升级列表中记录有每个第一目标差分升级包对应的系统版本标识和URL地址。
在本申请实施例中,当OTA服务器确定目标终端设备当前在线,并根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的当前系统版本和最新系统版本之间存在一个或多个中间系统版本时,便会根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的第一最优升级路径,并生成第一最优升级路径对应的目标升级列表,以及将第一最优升级路径对应的目标升级列表发送至目标终端设备,此时,目标终端设备便可接收得到OTA服务器发送的第一最优升级路径对应的目标升级列表。
302、根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级。
在本申请实施例中,目标终端设备在接收得到OTA服务器发送的第一最优升级路径对应的目标升级列表后,便可根据预置规则和该目标升级列表中记录的每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级,即在根据每个第一目标差分升级包对应的系统版本标识确定每个第一目标差分升级包对应的下载顺序后,先下载第一个第一目标差分升级包,并根据第一个第一目标差分升级包对系统进行差分升级,再下载第二个第一目标差分升级包,并根据第二个第一目标差分升级包对系统进行差分升级…最后下载最后一个第一目标差分升级包,并根据最后一个第一目标差分升级包对系统进行差分升级。
303、当系统成功升级至最新系统版本时,重启系统。
在本申请实施例中,当系统成功升级至最新系统版本时,目标终端设备需要重启系统,以使得在将目标终端设备的系统从当前系统版本升级至最新系统版本的过程中,只需目标终端设备在系统成功升级至最新系统版本后,重启系统,无需目标终端设备在每次升级成功后,便重启系统,从而可以有效减少目标终端设备重启系统的次数。
以下为了更加详细地说明,本申请实施例提供了另一种OTA升级方法,具体如图4所示,该方法应用于目标终端设备,该方法包括:
401、接收OTA服务器发送的第一最优升级路径对应的目标升级列表。
其中,关于步骤401、接收OTA服务器发送的第一最优升级路径对应的目标升级列表,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
402、根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级。
在本申请实施例中,目标终端设备在接收得到OTA服务器发送的第一最优升级路径对应的目标升级列表后,便可根据预置规则和该目标升级列表中记录的每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级。
具体的,在本步骤中,目标终端设备根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级的具体过程为:
(1)首先,根据每个第一目标差分升级包对应的系统版本标识确定每个第一目标差分升级包对应的下载顺序。
例如,目标终端设备对应的当前系统版本为系统版本A,最新系统版本为系统版本E,系统版本A与系统版本E之间存在中间系统版本B、中间系统版本C、中间系统版本D,第一最优升级路径对应的目标升级列表中记录有第一目标差分升级包1对应的系统版本标识(即为系统版本B对应的系统版本标识)、第一目标差分升级包2对应的系统版本标识(即为系统版本C对应的系统版本标识)、第一目标差分升级包3对应的系统版本标识(即为系统版本D对应的系统版本标识)和第一目标差分升级包4对应的系统版本标识(即为系统版本E对应的系统版本标识),根据每个第一目标差分升级包对应的系统版本标识便可确定每个第一目标差分升级包对应的下载顺序为:(1)第一目标差分升级包1;(2)第一目标差分升级包2;(3)第一目标差分升级包3;(4)第一目标差分升级包4。
(2)根据每个第一目标差分升级包对应的下载顺序和URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级。
具体的,目标终端设备根据每个第一目标差分升级包对应的下载顺序和URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级的具体过程为:根据每个第一目标差分升级包对应的下载顺序和URL地址,依次下载每个第一目标差分升级包;
其中,在下载获得任意一个第一目标差分升级包后,根据本次下载获得的第一目标差分升级包对系统进行差分升级,并判断是否升级成功;若升级成功,则根据每个第一目标差分升级包对应的下载顺序和URL地址,下载下一个第一目标差分升级包;若升级失败,则重启系统,并判断升级失败原因是否为设备断电;若升级失败原因为设备断电,则重新根据本次下载获得的第一目标差分升级包对系统进行差分升级;若升级失败原因并非为设备断电,则向OTA服务器发送携带有目标中间系统版本标识的升级失败消息,以便OTA服务器根据目标中间系统版本标识和最新系统版本标识确定目标终端设备对应的第二最优升级路径,并生成第二最优升级路径对应的目标升级列表,其中,目标中间系统版本标识用于唯一标识目标中间系统版本,目标中间系统版本为目标终端设备升级失败前系统对应的版本,第二最优升级路径包含多个第二目标差分升级包,第二最优升级路径对应的目标升级列表中记录有每个第二目标差分升级包对应的系统版本标识和URL地址;接收OTA服务器发送的第二最优升级路径对应的目标升级列表;根据预置规则和每个第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个第二目标差分升级包,并根据下载的第二目标差分升级包对系统进行差分升级。
需要进行说明的是,目标终端设备根据预置规则和每个第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个第二目标差分升级包,并根据下载的第二目标差分升级包对系统进行差分升级的具体过程,可以参考上述目标终端设备根据预置规则和每个第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个第一目标差分升级包,并根据下载的第一目标差分升级包对系统进行差分升级的具体过程,本申请实施例此处将不再赘述。
403、当系统成功升级至最新系统版本时,重启系统。
其中,关于步骤403、当系统成功升级至最新系统版本时,重启系统,可以参考图1对应部分的描述,本申请实施例此处将不再赘述。
404、向OTA服务器发送升级成功消息。
在本申请实施例中,目标终端设备在系统成功升级至最新系统版本,并重启系统后,需要向OTA服务器发送升级成功消息,以便OTA服务器确定目标终端设备成功将系统从当前系统版本升级至最新系统版本,从而可以将记录的目标终端设备对应的当前系统版本标识更新为最新系统版本标识。
第三方面,作为对上述图1及图2所示方法的实现,本申请另一实施例还提供了一种OTA升级装置,该装置应用于OTA服务器。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置应用于当终端设备对应的当前系统版本和最新系统版本之间相差多个系统版本时,提高基于差分升级包对终端设备的系统进行差分升级的升级效率,具体如图5所示,该装置包括:
获取单元501,用于获取目标终端设备对应的当前系统版本标识和最新系统版本标识;
第一确定单元502,用于当根据所述当前系统版本标识和所述最新系统版本标识确定所述当前系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,其中,所述第一最优升级路径包含多个第一目标差分升级包;
第一生成单元503,用于生成所述第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
第一发送单元504,用于将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
进一步的,如图6所示,第一确定单元502包括:
第一确定模块5021,用于根据预置算法、所述当前系统版本标识、所述最新系统版本标识和每个中间系统版本标识确定所述目标终端设备对应的多个升级路径;
第二确定模块5022,用于根据每个所述升级路径包含的每个差分升级包对应的数据量大小,确定每个所述升级路径对应的总数据量大小;
第三确定模块5023,用于将多个所述升级路径中总数据量最小的升级路径确定为所述第一最优升级路径。
进一步的,如图6所示,第一确定模块5021,具体用于根据所述当前系统版本标识、所述最新系统版本标识和每个所述中间系统版本标识确定所述当前系统版本与所述最新系统版本之间存在的多个差分升级包;
根据所述预置算法、所述当前系统版本标识、所述最新系统版本标识、每个所述中间系统版本标识和多个所述差分升级包确定所述目标终端设备对应的多个升级路径。
进一步的,如图6所示,该装置还包括:
第一接收单元505,用于在第一发送单元504将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,接收所述目标终端设备发送的升级失败消息,其中,所述升级失败消息中包含目标中间系统版本标识,目标中间系统版本为所述目标终端设备升级失败前系统对应的版本;
第二确定单元506,用于当根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标中间系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,其中,所述第二最优升级路径包含多个第二目标差分升级包;
第二生成单元507,用于生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;
第二发送单元508,用于将所述第二最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
进一步的,如图6所示,该装置还包括:
第二接收单元509,用于在第一发送单元504将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,接收所述目标终端设备发送的升级成功消息;
更新单元510,用于将所述目标终端设备对应的当前系统版本标识更新为所述最新系统版本标识。
第四方面,作为对上述图3及图4所示方法的实现,本申请另一实施例还提供了一种OTA升级装置,该装置应用于目标终端设备。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置应用于当终端设备对应的当前系统版本和最新系统版本之间相差多个系统版本时,提高基于差分升级包对终端设备的系统进行差分升级的升级效率,具体如图7所示,该装置包括:
接收单元601,用于接收OTA服务器发送的第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径包含多个第一目标差分升级包,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
升级单元602,用于根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级;
重启单元603,用于当系统成功升级至最新系统版本时,重启系统。
进一步的,如图8所示,升级单元602包括:
确定模块6021,用于根据每个所述第一目标差分升级包对应的系统版本标识确定每个所述第一目标差分升级包对应的下载顺序;
升级模块6022,用于根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
进一步的,如图8所示,升级模块6022,具体用于根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包;
其中,在下载获得任意一个第一目标差分升级包后,根据所述第一目标差分升级包对系统进行差分升级,并判断是否升级成功;
若升级成功,则根据每个所述第一目标差分升级包对应的下载顺序和URL地址,下载下一个第一目标差分升级包;
若升级失败,且升级失败原因并非为设备断电,则向所述OTA服务器发送携带有目标中间系统版本标识的升级失败消息,以便所述OTA服务器根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,并生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径包含多个第二目标差分升级包,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;接收所述OTA服务器发送的第二最优升级路径对应的目标升级列表;根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
进一步的,如图8所示,该装置还包括:
发送单元604,用于在系统成功升级至最新系统版本,重启单元603重启系统之后,向所述OTA服务器发送升级成功消息。
本申请实施例提供一种OTA升级方法及装置,在本申请实施例中,OTA服务器是根据目标终端设备对应的当前系统版本标识和最新系统版本标识确定目标终端设备对应的最优升级路径,并生成该最优升级路径对应的目标升级列表,以及将该目标升级列表发送至目标终端设备,从而使得目标终端设备根据接收到的目标升级列表便可将系统从当前系统版本升级至最新系统版本,因此,可以有效提高基于差分升级包对目标终端设备进行差分升级的升级效率。
本申请实施例提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述第一方面所述的OTA升级方法;或执行上述第二方面所述的OTA升级方法。
存储介质可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请实施例还提供了一种OTA升级装置,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行上述第一方面所述的OTA升级方法;或执行上述第二方面所述的OTA升级方法。
本申请实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述第一方面所述的OTA升级方法。
本申请实施例还提供了另一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时执行上述第二方面所述的OTA升级方法。
本申请提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化上述第一方面所述的OTA升级方法步骤的程序代码。
本申请还提供了另一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化上述第二方面所述的OTA升级方法步骤的程序代码。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (13)
1.一种OTA升级方法,其特征在于,所述方法应用于OTA服务器,所述方法包括:
获取目标终端设备对应的当前系统版本标识和最新系统版本标识;
当根据所述当前系统版本标识和所述最新系统版本标识确定所述当前系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,其中,所述第一最优升级路径包含多个第一目标差分升级包;
生成所述第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,包括:
根据预置算法、所述当前系统版本标识、所述最新系统版本标识和每个中间系统版本标识确定所述目标终端设备对应的多个升级路径;
根据每个所述升级路径包含的每个差分升级包对应的数据量大小,确定每个所述升级路径对应的总数据量大小;
将多个所述升级路径中总数据量最小的升级路径确定为所述第一最优升级路径。
3.根据权利要求2所述的方法,其特征在于,所述根据预置算法、所述当前系统版本标识、所述最新系统版本标识和每个中间系统版本标识确定所述目标终端设备对应的多个升级路径,包括:
根据所述当前系统版本标识、所述最新系统版本标识和每个所述中间系统版本标识确定所述当前系统版本与所述最新系统版本之间存在的多个差分升级包;
根据所述预置算法、所述当前系统版本标识、所述最新系统版本标识、每个所述中间系统版本标识和多个所述差分升级包确定所述目标终端设备对应的多个升级路径。
4.根据权利要求1所述的方法,其特征在于,在所述将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,所述方法还包括:
接收所述目标终端设备发送的升级失败消息,其中,所述升级失败消息中包含目标中间系统版本标识,目标中间系统版本为所述目标终端设备升级失败前系统对应的版本;
当根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标中间系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,其中,所述第二最优升级路径包含多个第二目标差分升级包;
生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;
将所述第二最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备之后,所述方法还包括:
接收所述目标终端设备发送的升级成功消息;
将所述目标终端设备对应的当前系统版本标识更新为所述最新系统版本标识。
6.一种OTA升级方法,其特征在于,所述方法应用于目标终端设备,所述方法包括:
接收OTA服务器发送的第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径包含多个第一目标差分升级包,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级;
当系统成功升级至最新系统版本时,重启系统。
7.根据权利要求6所述的方法,其特征在于,所述根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级,包括:
根据每个所述第一目标差分升级包对应的系统版本标识确定每个所述第一目标差分升级包对应的下载顺序;
根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
8.根据权利要求7所述的方法,其特征在于,所述根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级包括:
根据每个所述第一目标差分升级包对应的下载顺序和URL地址,依次下载每个所述第一目标差分升级包;
其中,在下载获得任意一个第一目标差分升级包后,根据所述第一目标差分升级包对系统进行差分升级,并判断是否升级成功;
若升级成功,则根据每个所述第一目标差分升级包对应的下载顺序和URL地址,下载下一个第一目标差分升级包;
若升级失败,且升级失败原因并非为设备断电,则向所述OTA服务器发送携带有目标中间系统版本标识的升级失败消息,以便所述OTA服务器根据所述目标中间系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第二最优升级路径,并生成所述第二最优升级路径对应的目标升级列表,其中,所述第二最优升级路径包含多个第二目标差分升级包,所述第二最优升级路径对应的目标升级列表中记录有每个所述第二目标差分升级包对应的系统版本标识和URL地址;接收所述OTA服务器发送的第二最优升级路径对应的目标升级列表;根据所述预置规则和每个所述第二目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第二目标差分升级包,并根据下载的所述第二目标差分升级包对系统进行差分升级。
9.根据权利要求6-8中任一项所述的方法,其特征在于,在所述系统成功升级至最新系统版本,重启系统之后,所述方法还包括:
向所述OTA服务器发送升级成功消息。
10.一种OTA升级装置,其特征在于,所述装置应用于OTA服务器,所述装置包括:
获取单元,用于获取目标终端设备对应的当前系统版本标识和最新系统版本标识;
第一确定单元,用于当根据所述当前系统版本标识和所述最新系统版本标识确定所述当前系统版本和所述最新系统版本之间存在一个或多个中间系统版本时,根据所述当前系统版本标识和所述最新系统版本标识确定所述目标终端设备对应的第一最优升级路径,其中,所述第一最优升级路径包含多个第一目标差分升级包;
第一生成单元,用于生成所述第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
第一发送单元,用于将所述第一最优升级路径对应的目标升级列表发送至所述目标终端设备,以便所述目标终端设备根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级。
11.一种OTA升级装置,其特征在于,所述装置应用于目标终端设备,所述装置包括:
接收单元,用于接收OTA服务器发送的第一最优升级路径对应的目标升级列表,其中,所述第一最优升级路径包含多个第一目标差分升级包,所述第一最优升级路径对应的目标升级列表中记录有每个所述第一目标差分升级包对应的系统版本标识和URL地址;
升级单元,用于根据预置规则和每个所述第一目标差分升级包对应的系统版本标识、URL地址,依次下载每个所述第一目标差分升级包,并根据下载的所述第一目标差分升级包对系统进行差分升级;
重启单元,用于当系统成功升级至最新系统版本时,重启系统。
12.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至5中任一项所述的OTA升级方法;
或执行权利要求6至9中任一项所述的OTA升级方法。
13.一种OTA升级装置,其特征在于,所述装置包括存储介质;及一个或者多个处理器,所述存储介质与所述处理器耦合,所述处理器被配置为执行所述存储介质中存储的程序指令;所述程序指令运行时执行权利要求1至5中任一项所述的OTA升级方法;
或执行权利要求6至9中任一项所述的OTA升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211054896.2A CN115469904A (zh) | 2022-08-31 | 2022-08-31 | Ota升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211054896.2A CN115469904A (zh) | 2022-08-31 | 2022-08-31 | Ota升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115469904A true CN115469904A (zh) | 2022-12-13 |
Family
ID=84370803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211054896.2A Pending CN115469904A (zh) | 2022-08-31 | 2022-08-31 | Ota升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115469904A (zh) |
-
2022
- 2022-08-31 CN CN202211054896.2A patent/CN115469904A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107391104B (zh) | 一种客户端与react native代码的更新依赖管理方法、装置及系统 | |
JP2002297390A (ja) | 情報処理装置、センター装置及び端末装置並びにリモートプログラムダウンロードシステム | |
CN110597542B (zh) | 软件自动ota升级方法及装置、电子设备 | |
CN112947983B (zh) | 应用程序更新方法及装置、电子设备、存储介质 | |
CN108415714A (zh) | 移动终端的系统升级方法及装置 | |
EP3313041A1 (en) | Application download method and device | |
US11876676B2 (en) | Network node firmware update | |
CN105700918A (zh) | 一种系统升级方法及装置 | |
CN112394966A (zh) | 设备升级方法、装置、计算机可读介质及设备 | |
CN110837388A (zh) | 机器人的软件升级方法、升级服务器、机器人及存储介质 | |
CN114785685A (zh) | 软件差分升级方法、装置、电子设备及可读存储介质 | |
CN110333876A (zh) | 一种数据清除方法及控制设备 | |
CN110647337A (zh) | 物联网mcu空中固件升级方法 | |
CN112995806A (zh) | 一种升级光网络单元方法、装置、系统及存储介质 | |
CN109343970B (zh) | 基于应用程序的操作方法、装置、电子设备及计算机介质 | |
CN111459524A (zh) | 软件的升级方法、装置、系统 | |
CN110750286A (zh) | OTA升级Mbn的管理方法、装置、系统、设备和介质 | |
CN105740298A (zh) | 文件处理方法、装置及服务端设备 | |
CN115469904A (zh) | Ota升级方法及装置 | |
CN109710287B (zh) | 一种热更新方法、装置及计算机存储介质 | |
CN115454575B (zh) | jar包转换并自动加载的方法、装置、设备及存储介质 | |
CN115167907A (zh) | 终端设备升级方法、服务器、电子设备及存储介质 | |
CN113312073B (zh) | 一种安装包文件处理方法和相关装置 | |
CN114879993A (zh) | 软件安装包的升级处理方法、服务器及客户端 | |
CN106919405B (zh) | 一种客户端的初始化方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |