CN105700926A - 差分升级包制作方法及装置、系统差分升级方法及装置 - Google Patents
差分升级包制作方法及装置、系统差分升级方法及装置 Download PDFInfo
- Publication number
- CN105700926A CN105700926A CN201610022829.0A CN201610022829A CN105700926A CN 105700926 A CN105700926 A CN 105700926A CN 201610022829 A CN201610022829 A CN 201610022829A CN 105700926 A CN105700926 A CN 105700926A
- Authority
- CN
- China
- Prior art keywords
- client
- data
- data storage
- version
- storage file
- 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
Links
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种差分升级包制作方法及装置和系统差分升级方法及装置,涉及移动通信技术领域,旨在解决因系统升级导致数据校验失败引起客户端数据被还原或者丢失的问题,提升OTA系统差分升级方法的用户体验效果。该差分升级包制作方法包括:分析待升级系统的原版本和目标版本的差异化,制作由待升级系统的原版本升级到目标版本所需要的差分文件;分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件;由所述差分文件和所述客户端定制化数据存储文件制作差分升级包。
Description
技术领域
本发明涉及移动通信技术领域,尤其涉及一种差分升级包制作方法及装置和系统差分升级方法及装置。
背景技术
空中下载技术(OvertheAirTechnology,OTA)是一种通过无线网络进行数据下载的技术,现已被广泛应用于智能电视、手机、平板电脑、机顶盒等设备的网络升级中。用户通过下载服务器端提供的针对客户端当前软件版本的差分文件并将差分文件通过打补丁的方式更新到当前软件版本中,从而实现OTA的升级。
然而,采用差分文件进行系统版本升级的过程中,添加新功能时,新增加的数据改变了原来数据的存储位置,导致数据校验失败,进而相应的数据值被还原成默认值或者被清除;以及在修复系统漏洞时,导致相应数据项被调整并引起部分数据存储位置改变,导致数据校验失败,进而系统升级后将相应数据值还原成默认值或者清除。示例的,系统升级过程中,数据更新导致更新后的数据长度超过了原数据项的长度设定或者新增数据项必须存储在原数据分区中间,导致其后所有数据储存位置发生变化,进而导致数据校验失败引起数据丢失。示例的,系统差分升级后,客户端的开机音乐选项被打开,造成用户需要重新关闭客户端的开机音乐选型,或者用户在系统升级之前根据个人喜好配置的客户端的图像和声音参数,系统升级过程中还原了这些参数,造成用户需要根据个人喜好再次配置这些参数,最终引起系统升级的用户体验效果差。
发明内容
本发明实施例提供一种差分升级包制作方法及装置和系统差分升级方法及装置,旨在解决因系统升级导致数据校验失败引起客户端数据被还原或者丢失的问题,提升OTA系统差分升级方法的用户体验效果。
本发明提供的具体技术方案如下:
一种差分升级包制作方法,包括:
分析待升级系统的原版本和目标版本的差异化,制作由待升级系统的原版本升级到目标版本所需要的差分文件;
分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件;
由所述差分文件和所述客户端定制化数据存储文件制作差分升级包。
进一步的,所述分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件,包括:
获取原版本系统的数据存储列表和目标版本系统的数据存储列表,所述数据存储列表至少包括数据名称和其对应的偏移量;
比较原版本系统的数据存储列表与目标版本系统的数据存储列表的数据名称及其所对应的偏移量是否相同;
将偏移量不相同的数据项的数据名称、原始偏移量和目标偏移量写入所述客户端定制化数据存储文件。
进一步的,所述客户端定制化数据包括用户数据和开发数据,其中,所述用户数据为客户端内用户可以调整的系统数据,包括声音设定参数、图像设定参数、场景设定参数、信号源设定参数、网络设定参数、特殊功能开关设定参数;所述开发数据为客户端内开发者可以调整的系统数据,包括模式设定参数、开机启动项设定参数、系统运行设定参数。
另一方面,本发明实施例提供一种差分升级包制作装置,包括:
存储单元,用于存储待升级系统的原版本和目标版本以及带有客户端定制化数据存储文件的差分升级包;
升级包制作单元,用于根据所述待升级系统的原版本和目标版本之间的差异性,制作又待升级系统的原版本升级到目标版本所需要的差分文件;
处理单元,用于根据带升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件。
进一步的,所述处理单元具体用于:
比较原版本系统的数据存储列表与目标版本系统的数据存储列表的数据名称及其所对应的偏移量是否相同;
将偏移量不相同的数据项的数据名称、原始偏移量和目标偏移量写入所述客户端定制化数据存储文件。
再一方面,本发明实施例提供一种空中下载技术的系统差分升级方法,包括:
客户端确定当前系统的版本低于服务器上对应系统的新版本时,获取带有客户端定制化数据存储文件的差分升级包;
客户端从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件对所述客户端定制化数据进行存储;
客户端根据所述差分文件将客户端当前系统版本升级到目标版本;
客户端将所述客户端定制化数据读入客户端内相应数据分区内。
进一步的,所述客户端从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件对所述客户端定制化数据进行存储,具体包括:
客户端从所述差分升级包内获取客户端定制化数据存储文件,客户端根据所述客户端定制化数据存储文件查找相应的所述客户端定制化数据值,并将相应的数据值写入所述客户端定制化数据存储文件;
客户端将写入相应数据值的所述客户端定制化数据存储文件存储。
进一步的,所述客户端定制化数据包括用户数据和开发数据,其中,所述用户数据为客户端内用户可以调整的系统数据,包括声音设定参数、图像设定参数、场景设定参数、信号源设定参数、网络设定参数、特殊功能开关设定参数;所述开发数据为客户端内开发者可以调整的系统数据,包括模式设定参数、开机启动项设定参数、系统运行设定参数。
再一方面,本发明实施例还提供一种空中下载技术的系统差分升级装置,包括:
处理单元,用于确定当前系统版本低于服务器上对应系统的新版本以及用于存储带有客户端定制化数据存储文件的差分升级包和读写所述客户端定制化数据;
下载单元,用于从服务器下载带有客户端定制化数据存储文件的差分升级包;
升级单元,用于根据所述差分升级包对客户端进行系统版本升级。
进一步的,所述处理单元具体用于:
从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件查找相应的所述客户端定制化数据值,并将相应的数据值写入所述客户端定制化数据存储文件;
待升级单元根据所述差分升级包将客户端系统版本升级到目标版本之后,将所述客户端定制化数据存储文件中的所述客户端定制化数据值读入客户端内相应的数据分区。
本发明的有益效果如下:
本发明实施例提供的差分升级包制作方法,获得的差分升级包包括客户端定制化数据存储文件和由待升级系统的原版本升级到目标版本所需要的差分文件。这样,在利用本发明实施例提供的差分升级包制作方法得到的差分升级包,进行系统版本差分升级的过程中,可以根据客户端定制化数据存储文件对客户端系统版本差分升级过程中导致的数据校验失败被还原或丢失的客户端数据进行保护,可以有效避免客户端系统版本升级过程中,新增加的数据改变了原来数据的存储位置,导致数据校验失败,进而相应的数据值被还原成默认值或者被清除;以及在修复系统漏洞时,导致相应数据项被调整并引起部分数据存储位置改变,导致数据校验失败,进而系统升级后将相应数据值还原成默认值或者清除的问题。本发明实施例的差分升级文件制作方法可以有效解决差分系统升级导致数据校验失败引起客户端数据被还原或者丢失的问题,提升OTA系统差分升级方法的用户体验效果。
附图说明
图1为本发明实施例中带有客户端定制化数据存储文件的差分升级包制作流程图;
图2为本发明实施例中带有客户端定制化数据存储文件的差分升级包制作装置的示意图;
图3为本发明实施例中可保护客户端定制化数据的系统差分升级方法的流程图;
图4为本发明实施例中可保护客户端定制化数据的系统差分升级装置示意图。
具体实施方式
为了解决采用基于空中下载技术OTA的系统差分升级方法进行客户端系统版本升级,导致数据校验失败引起客户端数据被还原或者丢失的问题,本发明实施例,提供了一种差分升级包制作方法及装置和系统差分升级方法及装置,应用于客户端的系统版本升级,示例的,既可以用于智能电视系统版本升级,也能用于手机、平板、机顶盒等终端的系统版本升级。
下面结合附图对本发明优选的实施方式进行详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不限定本发明。
参阅图1所示,本发明实施例中,在服务器侧制作带有客户端定制化数据存储文件的差分升级包的流程如下:
100:分析待升级系统的原版本和目标版本的差异化,制作由待升级系统的原版本升级到目标版本所需要的差分文件。
110:分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件。
120:由所述差分文件和所述客户端定制化数据存储文件制作差分升级包。
需要说明的是,步骤100和步骤110的执行过程,没有先后顺序,即可以先分析待升级系统的原版本和目标版本的差异化,制作由待升级系统的原版本升级到目标版本所需要的差分文件,再分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件;也可以先分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件,再分析待升级系统的原版本和目标版本的差异化,制作由待升级系统的原版本升级到目标版本所需要的差分文件;或者步骤100和步骤110在服务器中同时执行。
具体的,在执行步骤100的过程中,服务器首先获取待升级系统原版本的二进制数据和目标版本的二进制数据,然后对原版本的二进制数据进行处理得到一个中间临时文件,该中间临时文件用于分析待升级系统的原版本和目标版本之间的差异性信息,最后基于该差异性信息生成待升级系统由原版本升级到目标版本所需要的差分文件。
示例的,服务器在制作由待升级系统的原版本A升级到目标版本B所需要的差分文件时,首先对原版本A的数据进行处理,通过原版本A的二进制数据经过数学变换和排序计算出一个元数据的集合,其中,元数据是指在制作差分文件过程中设定的最小的基础单位的属性数据,将元数据的集合序列化得到一个中间临时文件,最后根据该中间临时文件对原版本A和目标版本B进行差异化分析,构建由待升级系统的原版本A升级到目标版本B所需要的差分文件。现有技术中,差分文件的制作已经比较详细,本发明在此不做详细累述,本领域技术人员可参考现有技术。
具体的,服务器在执行步骤110的过程中,首先获取待升级系统原版本的数据存储列表和目标版本数据存储列表,其中,数据存储列表至少包括数据名称和其对应的偏移量,偏移量代表的是该数据的存储位置,基于基地址每个数据名称对应唯一的偏移量。然后,比较原版本系统的数据存储列表与目标版本系统的数据存储列表的数据名称及其所对应的偏移量是否相同,最后根据数据名称所对应的偏移量不相同的数据项,生成客户端定制化数据存储文件,该客户端定制化数据存储文件至少包括偏移量不相同的数据项的数据名称、待升级系统原版本的数据存储列表中的偏移量以及标版本数据存储列表中的偏移量。
示例的,待升级系统原版本的数据存储列表如下表表1所示,目标版本的数据存储列表如下表表2所示,表中,第一行为数据名称,第二行为数据存储长度,第三行为数据对应的偏移量。
表1
数据名称 | a | b | c | d | e | f | g | h | f |
数据存储长度 | 2 | 4 | 4 | 4 | 8 | 3 | 5 | 6 | 4 |
原始偏移量 | 0 | 2 | 6 | 10 | 14 | 22 | 25 | 30 | 36 |
表2
数据名称 | a | b | c | d | e | f | g | h | i | f |
数据存储长度 | 2 | 4 | 5 | 4 | 7 | 3 | 5 | 6 | 3 | 4 |
目标偏移量 | 0 | 2 | 6 | 11 | 15 | 22 | 25 | 30 | 36 | 39 |
示例的,比较待升级系统原版本的数据存储列表表1与目标版本的数据存储列表表2,发现系统版本升级后,由于数据c的存储长度发生了变化,导致其后的数据d、e的偏移量发生改变,即数据d、e的存储位置发生改变,将会导致数据d、e对应的数据值还原或者丢失,因此,在系统升级过程中,需要保护数据d、e对应的数据值;系统版本升级后,在数据h的后面插入了新的数据值i,增加了数据i同时引起了数据f的偏移量发生改变,因此,即增加新的数据i引起数据f的存储位置发生改变,将会导致数据f对应的数据值还原或者丢失,因此,在系统升级过程中,需要保护数据f对应的数据值。综上所述,分析待升级系统原版本的数据存储列表表1与目标版本的数据存储列表表2的差异化,得到的客户端定制化数据存储文件包括数据d、e、f的数据名称、原始偏移量和目标偏移量。
示例的,客户端定制化数据存储文件是一个带有需要保护的客户端定制化数据名称的文本文件或者数据表格文件。
其中,客户端定制化数据包括用户数据和开发数据,其中,所述用户数据为客户端内用户可以调整的系统数据,包括声音设定参数、图像设定参数、场景设定参数、信号源设定参数、网络设定参数、特殊功能开关设定参数;所述开发数据为客户端内开发者可以调整的系统数据,包括模式设定参数、开机启动项设定参数、系统运行设定参数。
具体的,声音设定参数主要包括客户端的音量参数、声道参数等;图像设定参数主要包括客户端的对比度参数、亮度参数、色彩参数等;场景设定参数主要包括待机背景设定参数、静音模式参数等;信号源设定参数主要包括开机信号源设定参数、频道设定参数、记忆频道设定参数和喜爱频道设定参数等与信号源相关的参数;网络设定参数主要包括有线网络设定参数、无线网络设定参数以及蓝牙设定参数等;特殊功能开关设定参数主要包括附加功能设定参数、多屏互动功能设定参数、来电通功能设定参数以及通知功能设定参数等;模式设定参数主要包括启动模式设定参数和工程模式设定参数等;开机启动项设定参数包括开机音乐设定参数、系统应用启动项设定参数等;系统运行设定参数主要包括快速开关机设定参数、屏幕保护设定参数以及输入法设定参数等。
示例的,本发明实施例的客户端定制化数据中的用户数据如下表表3所示:
表3
用户数据数据值 | 数据名称 |
TIL_SYSTEM_GROUP+TIL_BLUE_MUTE=true | 无信号显示蓝屏 |
TIL_SYSTEM_GROUP+TIL_BLUE_MUTE=false | 无信号不显示蓝屏 |
TIL_TV_GROUP+BOOT_MUSIC=true | 播放开机音乐 |
TIL_TV_GROUP+BOOT_MUSIC=false | 不播放开机音乐 |
TIL_PICTURE_GROUP+ TIL_PICTURE_MODE=2 | 图像模式 |
TIL_PICTURE_GROUP+ TIL_ZOOM_MODE=1 | 缩放模式 |
TIL_SYSTEM_GROUP+TIL_NETWORK_TYPE=ethernet | 网络类型 |
TIL_TV_GROUP+TIL_INPUT_SOURCE=HDMI1 | 当前信号源参数 |
TIL_AUDIO_GROUP+TIL_AUDIO_MODE=1 | 声道模式参数 |
TIL_AUDIO_GROUP+TIL_VOLUME=30 | 音量参数 |
…… | …… |
示例的,本发明实施例的客户端定制化数据中的开发数据如下表表4所示:
表4
开发数据数据值 | 数据名称 |
TIL_SYSTEM_GROUP+ TIL_STARTUP_MODE=1 | 启动模式 |
TIL_SYSTEM_GROUP+ TIL_FACTORY_MODE=0 | 非工厂模式 |
TIL_SYSTEM_GROUP+ TIL_FACTORY_MODE=1 | 工厂模式 |
TIL_SYSTEM_GROUP+TIL_STR_MODE=1 | 快速开关机参数 |
…… | …… |
示例的,通过比较待升级系统原版本的数据存储列表和目标系统的数据存储列表,发现在系统升级的过程中,改变了数据d、e、f的偏移量,需要保护客户端内数据d、e、f所对应的数据值,假如数据d、e、f分别对应客户端定制化数据中的用户数据中的无信号显示蓝屏、播放开机音乐和开发数据中的非工厂模式,则生成的客户端定制化数据存储文件如下表表5所示:
表5
数据名称 | 原始偏移量 | 目标偏移量 | 数据值 |
无信号显示蓝屏 | 10 | 11 | |
播放开机音乐 | 14 | 15 | |
非工厂模式 | 22 | 39 | |
…… | …… | …… | …… |
本发明实施例提供的差分升级包制作方法,获得的差分升级包包括客户端定制化数据存储文件和由待升级系统的原版本升级到目标版本所需要的差分文件。这样,在利用本发明实施例提供的差分升级包制作方法得到的差分升级包,进行系统版本差分升级的过程中,可以根据客户端定制化数据存储文件对客户端系统版本差分升级过程中存储位置发生改变导致数据校验失败,而被还原或丢失的客户端数据进行保护,可以有效避免客户端系统版本升级过程中,新增加的数据改变了原来数据的存储位置,导致数据校验失败,进而相应的数据值被还原成默认值或者被清除的问题;以及在修复系统漏洞时,导致相应数据项被调整并引起部分数据存储位置改变,导致数据校验失败,进而系统升级后将相应数据值还原成默认值或者清除的问题。
本发明实施例的差分升级文件制作方法可以有效解决差分系统升级导致数据校验失败引起客户端数据被还原或者丢失的问题,提升OTA系统差分升级方法的用户体验效果。
同时,利用本发明实施例的差分升级包制作方法制作的差分升级包进行系统升级,在系统升级之前,根据客户端定制化数据存储文件中的数据清单保留系统升级过程中,因存储位置发生改变导致数据校验失败,而被还原或丢失的客户端数据,并不是保留全部的客户端数据,降低了客户端数据的保存难度,提高了客户端数据保存的有效性,进一步提高了OTA系统差分升级方法的用户体验效果。
基于上述实施例中的由待升级系统的原版本升级到目标版本所需要的差分升级包的制作方法,参阅图3所示,服务器侧的差分升级包制作装置包括:
存储单元201,用于存储待升级系统的原版本和目标版本以及带有客户端定制化数据存储文件的差分升级包;
升级包制作单元202,用于根据所述待升级系统的原版本和目标版本之间的差异性,制作又待升级系统的原版本升级到目标版本所需要的差分文件;
处理单元203,用于根据带升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化分析,制作客户端定制化数据存储文件。
具体的,升级包制作单元202获取待升级系统原版本的二进制数据和目标版本的二进制数据,然后对原版本的二进制数据进行处理得到一个中间临时文件,该中间临时文件用于分析待升级系统的原版本和目标版本之间的差异性信息,最后基于该差异性信息生成待升级系统由原版本升级到目标版本所需要的差分文件。示例的,升级包制作单元202从存储单元201获取存储在存储单元201的待升级系统原版本的二进制数据和目标版本的二进制数据。
具体的,处理单元203获取待升级系统原版本的数据存储列表和目标版本数据存储列表,然后,比较原版本系统的数据存储列表与目标版本系统的数据存储列表的数据名称及其所对应的偏移量是否相同,最后将偏移量不相同的数据项的数据名称、原始偏移量和目标偏移量写入客户端定制化数据存储文件,生成该客户端定制化数据存储文件。
基于上述实施例中的差分升级包制作方法制作的由待升级系统的原版本升级到目标版本所需要的差分升级包,参阅图3所示,本发明实施例提供的基于空中下载技术的系统差分升级方法对客户端进行系统版本升级的流程如下:
300:客户端确定当前系统的版本低于服务器上对应系统的新版本时,获取带有客户端定制化数据存储文件的差分升级包。
其中,客户端在确定当前系统版本低于服务器上对应系统的新版本时,可以向用户提示系统版本升级信息,并根据用户指示确定是否需要进行系统版本升级。当用户指示需要进行系统版本升级时,客户端从服务器下载带有客户端定制化数据存储文件的差分升级包,并存储在客户端内用于系统升级的存储分区。
具体的,在执行步骤300的过程中,客户端可以通过以下两种方式来确定当前系统版本低于服务器上对应系统的新版本:
第一种,客户端按照设定的检测周期自主地检测客户端的当前系统版本,以及按照设定的周期从服务器获取对应系统的新版本,并对当前系统版本和服务器上对应系统的新版本进行比较,从而根据比较结果获知当前系统版本低于服务器上对应系统的新版本。
第二种,客户端根据服务器的通知获知当前系统版本低于服务器上对应系统的新版本。
310:客户端从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件对所述客户端定制化数据进行存储。
具体的,客户端从存储在客户端内用于系统升级的存储分区内的差分升级包中解析出客户端定制化数据存储文件、以及由待升级系统的原版本升级到目标版本所需要的差分文件。然后客户端根据该客户端定制化数据存储文件中的数据名称和原始偏移量,查找客户端内相应的客户端定制化数据,其中原始偏移量代表的是该客户端定制化数据在原系统版本下所对应的存储位置。最后,客户端将查找到的该客户端定制化数据值写入该客户端定制化数据存储文件,进而将写入该客户端定制化数据值的客户端定制化数据存储文件存储到客户端内预留的用于系统升级的存储分区,比如,用于系统升级和临时存储数据的cache分区(系统升级缓存分区),在系统升级的过程中,存储在cache分区(系统升级缓存分区)内的数据不会被修改或丢失。
示例的,客户端根据客户端定制化数据中无信号显示蓝屏的原始偏移量10查找到该定制化数据在客户端内的存储位值,进而得到无信号显示蓝屏的数据值为TIL_SYSTEM_GROUP+TIL_BLUE_MUTE=true,进而将该数据值写入该客户端定制化数据存储文件。示例的,根据上述实施例,步骤310中存储的该客户端定制化数据存储文件如下表表6所示:
表6
320:客户端根据所述差分文件将客户端当前系统版本升级到服务器上对应系统的新版本。
具体的,客户端重新启动进入系统升级用的Recovery系统(升级恢复系统),然后进行系统差分升级校验,待系统差分升级校验完毕,根据差分文件,将客户端的当前系统版本升级到服务器上对应系统的新版本,客户端的系统版本升级到新版本后,客户端再次重新启动,进入到升级后的系统主页。
330:客户端将所述客户端定制化数据读入客户端内相应数据分区内。
具体的,客户端系统版本升级到新版本后,客户端根据存储在客户端内预留的用于系统升级的存储分区内的该客户端定制化数据存储文件,将该客户端定制化数据读入该客户端内相应的数据分区内。在执行步骤330的过程中,客户端根据该客户端定制化数据存储文件中的数据名称和目标偏移量,将该客户端定制化数据读入该偏移量所对应的数据分区内,其中,该目标偏移量代表的是该客户端定制化数据在该客户端新系统版本下所对应的存储位置。
示例的,客户端根据客户端定制化数据中无信号显示蓝屏的目标偏移量11查找到无信号显示蓝屏的数据值在客户端新系统版本下的存储位置,进而将该无信号显示蓝屏的数据值TIL_SYSTEM_GROUP+TIL_BLUE_MUTE=true,读入该储存位置。
相比于现有技术,本发明实施例提供的基于空中下载技术的系统差分升级方法,在系统升级之前,客户端根据所下载的客户端定制化数据存储文件查找客户端内相应的数据值,并将该数据值写入该客户端定制化数据存储文件中,进而将客户端定制化数据存储文件存储到相应的系统分区内,待客户端系统升级完成后,再根据该客户端定制化数据存储文件将相应的客户端定制化数据值写入客户端内相应的数据分区内。这样,本发明实施例提供的差分升级方法,可以根据客户端定制化数据存储文件对客户端系统版本差分升级过程中导致的存储位置发生改变的客户端数据进行保护,可以有效避免客户端系统版本升级过程中,新增加的数据改变了原来数据的存储位置,导致数据校验失败,进而相应的数据值被还原成默认值或者被清除;以及在修复系统漏洞时,导致相应数据项被调整并引起部分数据存储位置改变,导致数据校验失败,进而系统升级后将相应数据值还原成默认值或者清除,进而有效解决了系统差分升级,导致数据校验失败引起客户端数据被还原或者丢失的问题,提高了OTA系统差分升级方法的用户体验效果。
基于上述实施例中的差分升级包制作方法制作的差分升级包,以及上述实施例的空中下载技术的系统差分升级方法,参阅图4所示,客户端侧的空中下载技术的系统差分升级装置,包括:
处理单元401,用于确定当前系统版本低于服务器上对应系统的新版本以及用于存储带有客户端定制化数据存储文件的差分升级包和读写所述客户端定制化数据;
下载单元402,用于从服务器下载带有客户端定制化数据存储文件的差分升级包;
升级单元403,用于根据所述差分升级包对客户端进行系统版本升级。
具体的,处理单元401在确定当前系统版本低于服务器上对应系统的新版本时,可以向用户提示系统版本升级信息,并根据用户指示确定是否需要进行系统版本升级。
进一步的,处理单元401可以通过以下两种方式来确定当前系统版本低于服务器上对应系统的新版本:
第一种,处理单元401按照设定的检测周期自主地检测客户端的当前系统版本,以及按照设定的周期从服务器获取对应系统的新版本,并对当前系统版本和服务器上对应系统的新版本进行比较,从而根据比较结果获知当前系统版本低于服务器上对应系统的新版本。
第二种,处理单元401根据服务器的通知获知当前系统版本低于服务器上对应系统的新版本。
具体的,处理单元401用于从差分升级包中获取客户端定制化数据存储文件,并根据该客户端定制化数据存储文件中的数据名称和原始偏移量,查找客户端内相应的客户端定制化数据,并将查找到的该客户端定制化数据值,写入该客户端定制化数据存储文件中,最后将写入相应数据值的该客户端定制化数据存储文件存储。待客户端系统版本升级到新版本后,处理单元401再根据该客户端定制化数据存储文件中的数据名称和目标偏移量,将该客户端定制化数据读入该偏移量所对应的数据分区内。
综上所述,采用本发明实施例中所记载的技术方案,用户在通过OTA差分升级方法进行系统升级之前,处理单元根据客户端定制化数据存储文件查找客户端内相应的数据值,并将该数据值写入该客户端定制化数据存储文件中,进而将客户端定制化数据存储文件存储到相应的系统分区内,待客户端系统升级完成后,再根据该客户端定制化数据存储文件将相应的客户端定制化数据值写入客户端内相应的数据分区内。这样,本发明实施例所记载的技术方案,可以有效避免客户端系统版本升级过程中导致的存储位置发生改变的客户端定制化数据进行保护,有效避免了系统差分升级导致的客户端定制化数据丢失,提高了OTA系统升级方法的用户体验效果。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种差分升级包制作方法,其特征在于,包括:
分析待升级系统的原版本和目标版本的差异化,制作由待升级系统的原版本升级到目标版本所需要的差分文件;
分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件;
由所述差分文件和所述客户端定制化数据存储文件制作差分升级包。
2.根据权利要求1所述方法,其特征在于,所述分析待升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件,包括:
获取原版本系统的数据存储列表和目标版本系统的数据存储列表,所述数据存储列表至少包括数据名称和其对应的偏移量;
比较原版本系统的数据存储列表与目标版本系统的数据存储列表的数据名称及其所对应的偏移量是否相同;
将偏移量不相同的数据项的数据名称、原始偏移量和目标偏移量写入所述客户端定制化数据存储文件。
3.根据权利要求1~2任一项所述方法,其特征在于,所述客户端定制化数据包括用户数据和开发数据,其中,所述用户数据为客户端内用户可以调整的系统数据,包括声音设定参数、图像设定参数、场景设定参数、信号源设定参数、网络设定参数、特殊功能开关设定参数;所述开发数据为客户端内开发者可以调整的系统数据,包括模式设定参数、开机启动项设定参数、系统运行设定参数。
4.一种差分升级包制作装置,其特征在于,包括:
存储单元,用于存储待升级系统的原版本和目标版本以及带有客户端定制化数据存储文件的差分升级包;
升级包制作单元,用于根据所述待升级系统的原版本和目标版本之间的差异性,制作又待升级系统的原版本升级到目标版本所需要的差分文件;
处理单元,用于根据带升级系统原版本的数据存储列表和目标版本的数据存储列表的差异化,制作客户端定制化数据存储文件。
5.根据权利要求4所述差分升级包制作装置,其特征在于,所述处理单元具体用于:
比较原版本系统的数据存储列表与目标版本系统的数据存储列表的数据名称及其所对应的偏移量是否相同;
将偏移量不相同的数据项的数据名称、原始偏移量和目标偏移量写入所述客户端定制化数据存储文件。
6.一种空中下载技术的系统差分升级方法,其特征在于,包括:
客户端确定当前系统的版本低于服务器上对应系统的新版本时,获取带有客户端定制化数据存储文件的差分升级包;
客户端从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件对所述客户端定制化数据进行存储;
客户端根据所述差分文件将客户端当前系统版本升级到目标版本;
客户端将所述客户端定制化数据读入客户端内相应数据分区内。
7.根据权利要求6所述方法,其特征在于,所述客户端从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件对所述客户端定制化数据进行存储,具体包括:
客户端从所述差分升级包内获取客户端定制化数据存储文件,客户端根据所述客户端定制化数据存储文件查找相应的所述客户端定制化数据值,并将相应的数据值写入所述客户端定制化数据存储文件;
客户端将写入相应数据值的所述客户端定制化数据存储文件存储。
8.根据权利要求6~7任一项所述方法,其特征在于,所述客户端定制化数据包括用户数据和开发数据,其中,所述用户数据为客户端内用户可以调整的系统数据,包括声音设定参数、图像设定参数、场景设定参数、信号源设定参数、网络设定参数、特殊功能开关设定参数;所述开发数据为客户端内开发者可以调整的系统数据,包括模式设定参数、开机启动项设定参数、系统运行设定参数。
9.一种空中下载技术的系统差分升级装置,其特征在于,包括:
处理单元,用于确定当前系统版本低于服务器上对应系统的新版本以及用于存储带有客户端定制化数据存储文件的差分升级包和读写所述客户端定制化数据;
下载单元,用于从服务器下载带有客户端定制化数据存储文件的差分升级包;
升级单元,用于根据所述差分升级包对客户端进行系统版本升级。
10.根据权利要求9所述装置,其特征在于,所述处理单元具体用于:
从所述差分升级包内获取客户端定制化数据存储文件,根据所述客户端定制化数据存储文件查找相应的所述客户端定制化数据值,并将相应的数据值写入所述客户端定制化数据存储文件;
待升级单元根据所述差分升级包将客户端系统版本升级到目标版本之后,将所述客户端定制化数据存储文件中的所述客户端定制化数据值读入客户端内相应的数据分区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610022829.0A CN105700926B (zh) | 2016-01-14 | 2016-01-14 | 差分升级包制作方法及装置、系统差分升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610022829.0A CN105700926B (zh) | 2016-01-14 | 2016-01-14 | 差分升级包制作方法及装置、系统差分升级方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105700926A true CN105700926A (zh) | 2016-06-22 |
CN105700926B CN105700926B (zh) | 2019-09-20 |
Family
ID=56227302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610022829.0A Active CN105700926B (zh) | 2016-01-14 | 2016-01-14 | 差分升级包制作方法及装置、系统差分升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105700926B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293814A (zh) * | 2016-07-29 | 2017-01-04 | 北京小米移动软件有限公司 | 升级方法及装置 |
CN106603311A (zh) * | 2017-01-18 | 2017-04-26 | 北京洋浦伟业科技发展有限公司 | Ota升级方法、客户端、服务器和系统 |
CN106790247A (zh) * | 2017-01-23 | 2017-05-31 | 青岛海信移动通信技术股份有限公司 | 一种Android系统升级的方法和装置 |
CN108170450A (zh) * | 2017-12-28 | 2018-06-15 | 北京远特科技股份有限公司 | 一种设备中系统固件的升级方法、装置及系统 |
CN108260004A (zh) * | 2017-12-30 | 2018-07-06 | 东莞市纽格力信息技术有限公司 | 一种用于机顶盒软件更新的系统及方法 |
CN109089259A (zh) * | 2018-08-03 | 2018-12-25 | 上海艾拉比智能科技有限公司 | 一种在线差分升级系统 |
CN109324810A (zh) * | 2017-07-26 | 2019-02-12 | 深圳市中兴微电子技术有限公司 | 物联网设备升级包的制作方法及系统 |
CN109688472A (zh) * | 2018-12-10 | 2019-04-26 | 未来电视有限公司 | 电视系统升级方法、装置、设备及存储介质 |
CN110018994A (zh) * | 2017-11-02 | 2019-07-16 | 华为终端有限公司 | 更新文件系统的方法、网络设备及计算机可读存储介质 |
CN110798741A (zh) * | 2019-11-14 | 2020-02-14 | 四川长虹电器股份有限公司 | 智能电视的安全升级方法及系统 |
CN111258620A (zh) * | 2018-11-30 | 2020-06-09 | 中兴通讯股份有限公司 | 差分升级包的生成方法、装置和设备 |
CN111787100A (zh) * | 2020-06-30 | 2020-10-16 | 上海乾隆节能科技有限公司 | 集中控制器,差分升级系统以及集中控制器进行升级的方法 |
CN112601125A (zh) * | 2020-12-16 | 2021-04-02 | 四川长虹电器股份有限公司 | 智能电视可配置数据的差分同步方法 |
CN113094077A (zh) * | 2019-12-23 | 2021-07-09 | 深圳Tcl数字技术有限公司 | 一种系统差分升级方法、装置、智能终端及存储介质 |
CN117270902A (zh) * | 2023-08-09 | 2023-12-22 | 大拓(山东)物联网科技有限公司 | Ota升级包生成方法和装置、ota升级方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090271528A1 (en) * | 2004-04-15 | 2009-10-29 | Microsoft Corporation | Efficient chunking algorithm |
CN102693145A (zh) * | 2012-05-31 | 2012-09-26 | 红石阳光(北京)科技有限公司 | 用于嵌入式系统的差分升级方法 |
CN104461593A (zh) * | 2013-09-18 | 2015-03-25 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置 |
CN104714811A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置、系统差分升级方法及装置 |
-
2016
- 2016-01-14 CN CN201610022829.0A patent/CN105700926B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090271528A1 (en) * | 2004-04-15 | 2009-10-29 | Microsoft Corporation | Efficient chunking algorithm |
CN102693145A (zh) * | 2012-05-31 | 2012-09-26 | 红石阳光(北京)科技有限公司 | 用于嵌入式系统的差分升级方法 |
CN104461593A (zh) * | 2013-09-18 | 2015-03-25 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置 |
CN104714811A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置、系统差分升级方法及装置 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106293814B (zh) * | 2016-07-29 | 2020-02-07 | 北京小米移动软件有限公司 | 升级方法及装置 |
CN106293814A (zh) * | 2016-07-29 | 2017-01-04 | 北京小米移动软件有限公司 | 升级方法及装置 |
CN106603311A (zh) * | 2017-01-18 | 2017-04-26 | 北京洋浦伟业科技发展有限公司 | Ota升级方法、客户端、服务器和系统 |
CN106790247A (zh) * | 2017-01-23 | 2017-05-31 | 青岛海信移动通信技术股份有限公司 | 一种Android系统升级的方法和装置 |
CN109324810A (zh) * | 2017-07-26 | 2019-02-12 | 深圳市中兴微电子技术有限公司 | 物联网设备升级包的制作方法及系统 |
CN110018994B (zh) * | 2017-11-02 | 2021-02-09 | 华为终端有限公司 | 更新文件系统的方法、网络设备及计算机可读存储介质 |
CN110018994A (zh) * | 2017-11-02 | 2019-07-16 | 华为终端有限公司 | 更新文件系统的方法、网络设备及计算机可读存储介质 |
CN108170450A (zh) * | 2017-12-28 | 2018-06-15 | 北京远特科技股份有限公司 | 一种设备中系统固件的升级方法、装置及系统 |
CN108260004A (zh) * | 2017-12-30 | 2018-07-06 | 东莞市纽格力信息技术有限公司 | 一种用于机顶盒软件更新的系统及方法 |
CN109089259A (zh) * | 2018-08-03 | 2018-12-25 | 上海艾拉比智能科技有限公司 | 一种在线差分升级系统 |
CN111258620A (zh) * | 2018-11-30 | 2020-06-09 | 中兴通讯股份有限公司 | 差分升级包的生成方法、装置和设备 |
CN111258620B (zh) * | 2018-11-30 | 2022-02-22 | 中兴通讯股份有限公司 | 差分升级包的生成方法、装置和设备 |
CN109688472A (zh) * | 2018-12-10 | 2019-04-26 | 未来电视有限公司 | 电视系统升级方法、装置、设备及存储介质 |
CN110798741A (zh) * | 2019-11-14 | 2020-02-14 | 四川长虹电器股份有限公司 | 智能电视的安全升级方法及系统 |
CN113094077A (zh) * | 2019-12-23 | 2021-07-09 | 深圳Tcl数字技术有限公司 | 一种系统差分升级方法、装置、智能终端及存储介质 |
CN111787100A (zh) * | 2020-06-30 | 2020-10-16 | 上海乾隆节能科技有限公司 | 集中控制器,差分升级系统以及集中控制器进行升级的方法 |
CN111787100B (zh) * | 2020-06-30 | 2023-09-01 | 上海乾隆节能科技有限公司 | 集中控制器,差分升级系统以及集中控制器进行升级的方法 |
CN112601125A (zh) * | 2020-12-16 | 2021-04-02 | 四川长虹电器股份有限公司 | 智能电视可配置数据的差分同步方法 |
CN117270902A (zh) * | 2023-08-09 | 2023-12-22 | 大拓(山东)物联网科技有限公司 | Ota升级包生成方法和装置、ota升级方法和装置 |
CN117270902B (zh) * | 2023-08-09 | 2024-05-10 | 大拓(山东)物联网科技有限公司 | Ota升级包生成方法和装置、ota升级方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105700926B (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105700926A (zh) | 差分升级包制作方法及装置、系统差分升级方法及装置 | |
CN105573780B (zh) | 一种基于容器的移动终端操作系统升级方法和装置 | |
CN104991793B (zh) | 一种用于应用程序分包的方法、装置以及系统 | |
JP2002297390A (ja) | 情報処理装置、センター装置及び端末装置並びにリモートプログラムダウンロードシステム | |
CN102932777A (zh) | 一种终端应用的更新方法和用户终端 | |
US8001213B2 (en) | Method, apparatus and computer program product for providing unrestricted content on a user terminal | |
KR19990082617A (ko) | 소프트웨어 및 데이터 모듈의 멀티캐스트다운로딩 시스템 및 방법 | |
CN106790247A (zh) | 一种Android系统升级的方法和装置 | |
CN105511920B (zh) | 一种基于容器的移动终端操作系统升级方法和装置 | |
CN103226961A (zh) | 一种播放方法和装置 | |
CN105630546B (zh) | 系统更新方法及装置 | |
CN103412773A (zh) | 一种获取文件的方法和设备 | |
CN106775720B (zh) | 集成播放器sdk的方法和装置及设置播放器sdk的方法和装置 | |
CN108874412A (zh) | 用于更新界面布局的方法、装置、设备及系统 | |
CN108829486A (zh) | 一种背景设置方法、装置、设备和存储介质 | |
CN104461621A (zh) | 一种更新属性信息的方法及装置 | |
CN109358894A (zh) | 一种支持DVB的Android设备升级方法及系统 | |
CN105630548B (zh) | 系统更新方法及装置 | |
CN111949298A (zh) | 升级包的生成方法、装置、服务器及计算机存储介质 | |
CN111142990A (zh) | 一种微信小程序页面展示方法、装置、及存储介质 | |
JP2008124862A (ja) | ネットワークシステム | |
CN105204827A (zh) | 信息获取装置、方法以及电子设备 | |
CN107135410A (zh) | 一种视音频播放能力的检测方法 | |
CN113656006A (zh) | 一种富文本的渲染方法及渲染设备 | |
CN114638630A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 266100 Zhuzhou Road, Laoshan District, Shandong, No. 151, No. Patentee after: Hisense Video Technology Co.,Ltd. Address before: 266100 Zhuzhou Road, Laoshan District, Shandong, No. 151, No. Patentee before: HISENSE ELECTRIC Co.,Ltd. |