CN104281471A - 多版本软件ota升级方法 - Google Patents
多版本软件ota升级方法 Download PDFInfo
- Publication number
- CN104281471A CN104281471A CN201410475218.2A CN201410475218A CN104281471A CN 104281471 A CN104281471 A CN 104281471A CN 201410475218 A CN201410475218 A CN 201410475218A CN 104281471 A CN104281471 A CN 104281471A
- Authority
- CN
- China
- Prior art keywords
- file
- software
- script
- hardware
- ota
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种多版本软件OTA升级方法,该方法主要是将OTA包文件,按照功能分成5类;将分类后的多个平台的OTA文件,重新合并为一类,拷贝到ALLinOne目录;将OTA升级控制脚本,按照功能分成5类;在控制脚本的每一类内容后面,按照硬件识别脚本添加对应硬件平台的升级文件。用硬件识别脚本可保证软件版本不会错误升级到其它平台;将升级包的内容按照功能分类,可实现多个软件包合并为一个软件包;将多个平台的升级软件合并到一个统一的软件,减少了客服维护工作量,降低了软件发布出错的概率,提高了OTA升级系统的可靠性;消除了用户对不同硬件平台的误解,防止了用户误装、误刷软件升级版本。
Description
技术领域
本发明属于手机平板等消费电子技术领域,尤其涉及一种多版本软件OTA(On The Air)升级方法。
背景技术
目前手机平板等消费类电子设备所使用的升级方式都是基于特定的硬件和软件采用完整卡刷包或者部分差分包的方式来实现的。为了方便,都支持OTA差分包的方式来升级软件版本。由于市场细分的需要,促使同类型的电子产品衍生出差异化,从而形成多种产品系列,每一种产品都对应着不同的软件版本,因此同一大类产品也需要维护很多个软件版本。
如何能够将同一产品系列的多个软件版本统一化为单一的软件版本,消除多个版本的差异化,实现多个软件版本的可靠升级成为本领域技术人员研究的课题。
发明内容
本发明首要解决的问题是如何能够将同一产品系列的多个软件版本统一化为单一的软件版本,消除多个版本的差异化,实现多个软件版本的可靠升级。
为解决上述问题,本发明采用的技术方案:一种多版本软件OTA升级方法,其特征在于:包括如下步骤:
第一步:根据硬件平台的差异,用软件写出针对每一款不同硬件的硬件自动识别脚本;
第二步:按照正常的软件版本升级流程,对每一个硬件平台分别制作OTA升级包;
第三步:将第二步中的各OTA升级包内的文件按照引导程序、内核程序、系统文件和升级程序及其他五个部分进行分类,并同时对升级脚本控制文件的内容基于上述分类进行分组;
第四步:将多个硬件平台的文件夹按照第三步所述的五个部分拷贝到ALLinone文件夹并分类;
第五步:拷贝各硬件平台的升级脚本控制文件到第四步所述的ALLinOne文件夹,保留文件路径不变;
第六步:将升级脚本控制文件中插入第一步所述的硬件自动识别脚本;
第七步:打包、签名并发布。
所述第四步的具体步骤如下:
A.将每一个硬件平台的OTA升级包解压到不同的文件夹,并将各所述文件夹简记为HW-1,HW-2……HW-n;在每一个文件夹的内部;针对第三步的五个部分分别新建五个文件夹为B-m,K-m,S-m,R-m,O-m,并将分类文件相应拷贝到这五个文件夹中,其中n表示硬件平台的种类,m为从1到n的自然数;
B.新建一个名称为ALLinOne的文件夹,该文件夹内包括B,K,S,R,O五个文件夹,将步骤A的每一个硬件平台内的B-m,K-m,R-m三类文件夹分别对应拷贝到AllinOne文件夹中的B,K,R文件夹中,而S和O这两类,任选一个硬件平台的S-m和O-m文件夹拷贝,并把该两个文件夹的后缀“-m”去掉;
所述硬件自动识别脚本的插入步骤如下:第五步中的脚本升级控制文件中的S和O部分保留不变,B,K,R三部分内容做如下修改:利用ifelse控制语句,插入第一步中的硬件自动识别脚本程序,并根据脚本内容,按照步骤A中的文件夹名字修改脚本路径,添加到硬件识别程序后,形成新的选择控制脚本。
本发明具有的优点和积极效果是:1,用硬件识别脚本可保证软件版本不会错误升级到其它平台;
2,将升级包的内容按照功能分类,可实现多个软件包合并为一个软件包;
3.将多个平台的升级软件合并到一个统一的软件,减少了客服维护工作量,降低了软件发布出错的概率,提高了OTA升级系统的可靠性;
4.消除了用户对不同硬件平台的误解,防止了用户误装、误刷软件升级版本。
附图说明
图1是本发明的流程图;
具体实施方式
现根据附图对本发明进行较详细的说明,如图1所示,一种多版本软件OTA升级方法,其特征在于:包括如下步骤:
第一步:根据硬件平台的差异,用软件写出针对每一款不同硬件的硬件自动识别脚本;
第二步:按照正常的软件版本升级流程,对每一个硬件平台分别制作OTA升级包;
第三步:将第二步中的各OTA升级包内的文件按照引导程序、内核程序、系统文件和升级程序及其他五个部分进行分类,并同时对升级脚本控制文件的内容基于上述分类进行分组;其中:引导程序用英文首字母B表示、内核程序用英文首字母K、系统文件用英文首字母S和升级程序用英文首字母R及其他用英文首字母O表示;
第四步:将多个硬件平台的文件夹按照第三步所述的五个部分拷贝到ALLinone文件夹并分类;
所述第四步的具体步骤如下:
A.将每一个硬件平台(英文首字母简写为HW)的OTA升级包解压到不同的文件夹,并将各所述文件夹简记为HW-1,HW-2……HW-n;在每一个文件夹的内部;针对第三步的五个部分分别新建五个文件夹为B-m,K-m,S-m,R-m,O-m,并将分类文件相应拷贝到这五个文件夹中,其中n表示硬件平台的种类,m为从1到n的自然数;
B.新建一个名称为ALLinOne的文件夹,该文件夹内包括B,K,S,R,O五个文件夹,将步骤A的每一个硬件平台内的B-m,K-m,R-m三类文件夹分别对应拷贝到AllinOne文件夹中的B,K,R文件夹中,而S和O这两类,任选一个硬件平台的S-m和O-m文件夹拷贝,并把该两个文件夹的后缀“-m”去掉;
第五步:拷贝各硬件平台的升级脚本控制文件到第四步所述的ALLinOne文件夹,保留文件路径不变;
第六步:将升级脚本控制文件中插入第一步所述的硬件自动识别脚本;
所述硬件自动识别脚本的插入步骤如下:第五步中的脚本升级控制文件中的S和O部分保留不变,B,K,R三部分内容做如下修改:利用ifelse控制语句,插入第一步中的硬件自动识别脚本程序,并根据脚本内容,按照步骤A中的文件夹名字修改脚本路径,添加到硬件识别程序后,形成新的选择控制脚本。
第七步:打包、签名并发布。
将第六步生成的AllinOne文件夹打包,并利用系统的签名程序签名生成最后的统一发布包。
为了减轻软件版本维护的工作量,保证软件升级的可靠性与一致性,本发明能够将同一产品序列的多个软件版本统一化为单一的软件版本,消除多个版本的差异化,可实现多个软件版本的可靠升级。这样后台维护人员只需要维护一个软件版本就可适应多个不同硬件版本,因而极大降低了维护工作量,并可防止用户对产品的不熟悉,将软件误装、误升级到其他的临近的硬件平台去,造成使用上的不便。
以上对本发明的实施例进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明范围所作的均等变化与改进等,均应仍归属于本专利涵盖范围之内。
Claims (3)
1.一种多版本软件OTA升级方法,其特征在于:包括如下步骤:
第一步:根据硬件平台的差异,用软件写出针对每一款不同硬件的硬件自动识别脚本;
第二步:按照正常的软件版本升级流程,对每一个硬件平台分别制作OTA升级包;
第三步:将第二步中的各OTA升级包内的文件按照引导程序、内核程序、系统文件和升级程序及其他五个部分进行分类,并同时对升级脚本控制文件的内容基于上述分类进行分组;
第四步:将多个硬件平台的文件夹按照第三步所述的五个部分拷贝到ALLinone文件夹并分类;
第五步:拷贝各硬件平台的升级脚本控制文件到第四步所述的ALLinOne文件夹,保留文件路径不变;
第六步:将升级脚本控制文件中插入第一步所述的硬件自动识别脚本;
第七步:打包、签名并发布。
2.根据权利要求1所述的多版本软件OTA升级方法,其特征在于:所述第四步的具体步骤如下:
A.将每一个硬件平台的OTA升级包解压到不同的文件夹,并将各所述文件夹简记为HW-1,HW-2……HW-n;在每一个文件夹的内部;针对第三步的五个部分分别新建五个文件夹为B-m,K-m,S-m,R-m,O-m,并将分类文件相应拷贝到这五个文件夹中,其中n表示硬件平台的种类,m为从1到n的自然数;
B.新建一个名称为ALLinOne的文件夹,该文件夹内包括B,K,S,R,O五个文件夹,将步骤A的每一个硬件平台内的B-m,K-m,R-m三类文件夹分别对应拷贝到AllinOne文件夹中的B,K,R文件夹中,而S和O这两类,任选一个硬件平台的S-m和O-m文件夹拷贝,并把该两个文件夹的后缀“-m” 去掉。
3.根据权利要求1或2所述的多版本软件OTA升级方法,其特征在于:所述硬件自动识别脚本的插入步骤如下:第五步中的脚本升级控制文件中的S和O部分保留不变,B,K,R三部分内容做如下修改:利用ifelse控制语句,插入第一步中的硬件自动识别脚本程序,并根据脚本内容,按照步骤A中的文件夹名字修改脚本路径,添加到硬件识别程序后,形成新的选择控制脚本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410475218.2A CN104281471A (zh) | 2014-09-17 | 2014-09-17 | 多版本软件ota升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410475218.2A CN104281471A (zh) | 2014-09-17 | 2014-09-17 | 多版本软件ota升级方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104281471A true CN104281471A (zh) | 2015-01-14 |
Family
ID=52256373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410475218.2A Pending CN104281471A (zh) | 2014-09-17 | 2014-09-17 | 多版本软件ota升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104281471A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105425667A (zh) * | 2015-11-11 | 2016-03-23 | 深圳市国立智能电力科技有限公司 | 电力自动化装置嵌入式软件控制系统及控制方法 |
CN105700918A (zh) * | 2016-01-05 | 2016-06-22 | 青岛海信移动通信技术股份有限公司 | 一种系统升级方法及装置 |
CN105867958A (zh) * | 2015-11-23 | 2016-08-17 | 乐视致新电子科技(天津)有限公司 | 升级包签名方法及装置 |
CN106843956A (zh) * | 2017-01-17 | 2017-06-13 | 青岛海信移动通信技术股份有限公司 | 系统固件包的生成方法及装置 |
CN113805923A (zh) * | 2021-09-27 | 2021-12-17 | 一飞智控(天津)科技有限公司 | 编队飞机控制组件升级方法、系统、介质、编队飞机及应用 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6110228A (en) * | 1994-12-28 | 2000-08-29 | International Business Machines Corporation | Method and apparatus for software maintenance at remote nodes |
CN1904837A (zh) * | 2006-08-04 | 2007-01-31 | 华为技术有限公司 | 软件多版本升级的方法及系统 |
CN1964525A (zh) * | 2005-11-09 | 2007-05-16 | 中兴通讯股份有限公司 | 一种智能加载手机硬件驱动程序的系统 |
CN103123588A (zh) * | 2013-02-05 | 2013-05-29 | 东莞宇龙通信科技有限公司 | 一种获取差分升级补丁的方法及系统 |
-
2014
- 2014-09-17 CN CN201410475218.2A patent/CN104281471A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6110228A (en) * | 1994-12-28 | 2000-08-29 | International Business Machines Corporation | Method and apparatus for software maintenance at remote nodes |
CN1964525A (zh) * | 2005-11-09 | 2007-05-16 | 中兴通讯股份有限公司 | 一种智能加载手机硬件驱动程序的系统 |
CN1904837A (zh) * | 2006-08-04 | 2007-01-31 | 华为技术有限公司 | 软件多版本升级的方法及系统 |
CN103123588A (zh) * | 2013-02-05 | 2013-05-29 | 东莞宇龙通信科技有限公司 | 一种获取差分升级补丁的方法及系统 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105425667A (zh) * | 2015-11-11 | 2016-03-23 | 深圳市国立智能电力科技有限公司 | 电力自动化装置嵌入式软件控制系统及控制方法 |
CN105425667B (zh) * | 2015-11-11 | 2018-03-16 | 深圳市国立智能电力科技有限公司 | 电力自动化装置嵌入式软件控制系统及控制方法 |
CN105867958A (zh) * | 2015-11-23 | 2016-08-17 | 乐视致新电子科技(天津)有限公司 | 升级包签名方法及装置 |
CN105700918A (zh) * | 2016-01-05 | 2016-06-22 | 青岛海信移动通信技术股份有限公司 | 一种系统升级方法及装置 |
CN106843956A (zh) * | 2017-01-17 | 2017-06-13 | 青岛海信移动通信技术股份有限公司 | 系统固件包的生成方法及装置 |
CN106843956B (zh) * | 2017-01-17 | 2020-07-14 | 青岛海信移动通信技术股份有限公司 | 系统固件包的生成方法及装置 |
CN113805923A (zh) * | 2021-09-27 | 2021-12-17 | 一飞智控(天津)科技有限公司 | 编队飞机控制组件升级方法、系统、介质、编队飞机及应用 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104281471A (zh) | 多版本软件ota升级方法 | |
CN106775723B (zh) | 基于Android平台的系统固件定制的方法和Android设备 | |
US10585691B2 (en) | Distribution system, computer, and arrangement method for virtual machine | |
CN103955363B (zh) | 一种程序升级安装包的制作方法 | |
US9823915B1 (en) | Software container format | |
US8997085B2 (en) | Image delta-based upgrade of complex stack in software appliance | |
WO2021208288A1 (zh) | 一种代码与配置数据分离的程序实现方法及系统 | |
CN104267978A (zh) | 一种生成差分包的方法及装置 | |
CN110825363B (zh) | 智能合约获取方法、装置、电子设备及存储介质 | |
CN107632828A (zh) | 多dts文件支持方法、编译装置及嵌入式设备 | |
CN103473099A (zh) | 一种移动终端的软件升级方法和系统 | |
CN103838672A (zh) | 一种通用报表的自动化测试方法及装置 | |
CN110096271A (zh) | 组件可视化方法、基于组件可视化的页面处理方法及装置 | |
CN105138351B (zh) | 一种为宿主配置插件包的方法与装置 | |
CN103761107B (zh) | 软件包定制的装置及方法 | |
EP3417371A1 (en) | Model based upgrade campaign generation | |
CN104965760A (zh) | 一种管理软件功能模块生命周期的方法和装置 | |
CN109522332A (zh) | 客户信息数据合并方法、装置、设备及可读存储介质 | |
CN103729169A (zh) | 用于确定待迁移文件范围的方法和装置 | |
CN106469372A (zh) | 一种地址映射方法及装置 | |
CN114706564A (zh) | 软件包制作方法、装置、电子设备及存储介质 | |
CN103186610B (zh) | 数据同步方法和装置 | |
CN107153557A (zh) | 一种基于linux系统下对BIOS进行操作的装置及方法 | |
US20140201709A1 (en) | JavaScript™ Deployment Build Tool for software code that uses an object literal to define meta data and system code. | |
CN107885582B (zh) | 异构容器集群迁移方法和控制器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150114 |