CN114443089A - 升级包制作方法、装置、电子设备及存储介质 - Google Patents

升级包制作方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114443089A
CN114443089A CN202111621536.1A CN202111621536A CN114443089A CN 114443089 A CN114443089 A CN 114443089A CN 202111621536 A CN202111621536 A CN 202111621536A CN 114443089 A CN114443089 A CN 114443089A
Authority
CN
China
Prior art keywords
file
upgrade
target file
white list
upgrading
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
Application number
CN202111621536.1A
Other languages
English (en)
Inventor
冯鹏
陈鹏翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Skyworth RGB Electronics Co Ltd
Original Assignee
Shenzhen Skyworth RGB Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Skyworth RGB Electronics Co Ltd filed Critical Shenzhen Skyworth RGB Electronics Co Ltd
Priority to CN202111621536.1A priority Critical patent/CN114443089A/zh
Publication of CN114443089A publication Critical patent/CN114443089A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

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)

Abstract

本申请公开了升级包制作方法、装置、电子设备及存储介质,所述升级包制作方法包括:获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;从所述升级基准包中获取目标文件;根据所述白名单重置所述目标文件,得到升级定制文件;将所述升级定制文件打包,得到第一升级定制包。本申请解决了现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题,大大节约了时间、减少了服务器资源的耗费。

Description

升级包制作方法、装置、电子设备及存储介质
技术领域
本申请涉及OTA技术领域,尤其涉及一种升级包制作方法、装置、电子设备及存储介质。
背景技术
OTA的全称是Over The Air,空中下载技术,用于安卓在线下载、升级系统,OTA升级是指通过空中接口获取升级文件进行安装升级,它是安卓系统提供的标准软件升级方式,主要通过无线网络(如5G、4G、3G等)和无线局域网(Wi-Fi)下载升级文件,升级文件是ZIP压缩格式升级包,安卓软件系统根据国家区域(比如:亚太、欧洲、南美、北美等)划分,同一区域有不同的客户,不同客户都有自己特有的白名单,若客户的白名单不同,则需要定制编译不同的升级包,编译一个升级包的平均时间是一个小时,随着客户数量的增加,则需要耗费大量时间和服务器资源在编译升级包上。
发明内容
本申请的主要目的在于提供一种升级包制作方法、装置、电子设备及存储介质,旨在解决现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题。
为实现上述目的,本申请提供一种升级包制作方法,所述升级包制作方法包括:
获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;
从所述升级基准包中获取目标文件;
根据所述白名单重置所述目标文件,得到升级定制文件;
将所述升级定制文件打包,得到第一升级定制包。
优选地,所述目标文件包括第一目标文件和第二目标文件,所述根据所述白名单重置所述目标文件的步骤包括:
根据所述白名单更新所述第一目标文件;
根据所述第一目标文件重置所述第二目标文件。
优选地,所述根据所述白名单更新所述第一目标文件的步骤包括:
生成所述第一目标文件对应的第一镜像文件;
根据所述白名单重置所述第一镜像文件,根据重置后的第一镜像文件生成新的第一目标文件。
优选地,所述根据所述第一目标文件重置所述第二目标文件的步骤包括:
生成所述第二目标文件对应的第二镜像文件;
将所述第一镜像文件的第一属性值中的描述信息赋值于所述第二镜像文件的第二属性值;
根据所述第二镜像文件生成新的第二目标文件。
优选地,所述生成所述第二目标文件对应的第二镜像文件的步骤包括:
将所述第二目标文件解压成中间文件;
通过预设转换工具将所述中间文件转换成第二镜像文件。
优选地,所述将所述升级定制文件打包,得到第一升级定制包的步骤包括:
获取密钥;
将所述升级定制文件打包并使用所述密钥进行签名,得到第一升级定制包。
优选地,所述获取待升级设备的白名单的步骤之后,还包括:
判断是否存在所述白名单对应的第二升级定制包;
若不存在所述白名单对应的第二升级定制包,则执行步骤:从所述升级基准包中获取目标文件。
本申请还提供一种升级包制作装置,所述升级包制作装置应用于动态图片分解设备,所述升级包制作装置包括:
白名单获取模块,用于获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;
目标文件获取模块,用于从所述升级基准包中获取目标文件;
目标文件重置模块,用于根据所述白名单重置所述目标文件,得到升级定制文件;
打包模块,用于将所述升级定制文件打包,得到第一升级定制包。
本申请还提供一种电子设备,所述电子设备为实体设备,所述电子设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的所述升级包制作方法的程序,所述升级包制作方法的程序被处理器执行时可实现如上述的升级包制作方法的步骤。
本申请还提供一种存储介质,所述存储介质为计算机可读存储介质,所述计算机可读存储介质上存储有实现升级包制作方法的程序,所述升级包制作方法的程序被处理器执行时实现如上述的升级包制作方法的步骤。
本申请提供了一种升级包制作方法、装置、电子设备及存储介质,通过获取升级基准包和待升级设备的白名单,从所述升级基准包中获取目标文件,根据所述白名单重置所述目标文件,得到升级定制文件,将所述升级定制文件打包,得到第一升级定制包,实现了根据白名单修改升级基准包中对应的目标文件的信息,进而实现了升级基准包中的系统属性与待升级设备的白名单的匹配,进而得到与待升级设备的白名单相匹配的升级定制包,通过本申请的升级包制作方法得到一个升级定制包仅需几分钟,克服了现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题,大大节约了时间、减少了服务器资源的耗费。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请升级包制作方法一实施例的流程示意图;
图2为本申请升级包制作方法另一实施例的流程示意图;
图3为本申请实施例中升级包制作方法涉及的硬件运行环境的设备结构示意图。
本申请目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其它实施例,均属于本发明保护的范围。
OTA的全称是Over The Air,空中下载技术,用于安卓在线下载、升级系统,OTA升级是指通过空中接口获取升级文件进行安装升级,它是安卓系统提供的标准软件升级方式,OTA升级的过程主要分为两部分,一部分是服务器端,服务器端主要用于制作升级包,部署升级策略,包括升级方式、升级区域、品牌、机型等,设置需要升级的用户终端;一部分是用户终端,用户终端则是对升级版本进行下载、校验、解压、合成等过程然后完成升级,用户终端主要通过无线网络(如5G、4G、3G等)和无线局域网(Wi-Fi)从服务器端下载升级文件,其中,升级文件是ZIP压缩格式升级包,当服务器制作好升级包后,在TV端下载升级包和升级的过程中,系统要检查当前版本的白名单和升级包中的白名单是否一致,若一致,系统就会下载升级包和升级,以更新系统,安卓软件系统根据国家区域(比如:亚太、欧洲、南美、北美等)划分,同一区域有不同的客户,不同客户都有自己特有的白名单,若客户的白名单不同,则需要定制编译不同的升级包,编译一个升级包的平均时间是一个小时,随着客户数量的增加,则需要耗费大量时间和服务器资源在编译升级包上。
本申请实施例提供一种升级包制作方法,在本申请升级包制作方法的一实施例中,参照图1,所述升级包制作方法包括:
步骤S10,获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;
在本实施例中,需要说明的是,本实施例的执行主体是服务器,服务器端主要用于制作升级包,部署升级策略,包括升级方式、升级区域、品牌、机型等,设置需要升级的用户终端,以供用户终端对升级版本的升级包进行下载、校验、解压、合成等过程完成升级,服务器与用户终端之间通过无线网络(如5G、4G、3G等)或无线局域网(Wi-Fi)进行通信连接,所述升级基准包是通过空中下载技术进行升级所需根据任意的白名单编译得到的一个ZIP压缩格式的压缩包,所述白名单是获得用户或管理员批准应用的简单清单,当待升级设备尝试执行升级包下载和升级时,系统自动检查当前版本的白名单和升级包中的白名单是否一致,若当前版本的白名单和升级包中的白名单一致,则会允许下载升级包并进行升级,若当前版本的白名单和升级包中的白名单不一致,则会禁止下载升级包和升级过程。
具体地,获取服务器已完成编译并上传的最新版本的升级基准包,确定待升级设备,并获取待升级设备厂商提供的白名单,其中,所述白名单是所述待升级设备的系统属性,包括ro.product.name(名称属性)、ro.product.brand(品牌属性)、ro.product.device(采用的设备属性)和ro.product.board(采用的处理器属性)等。
优选地,所述获取待升级设备的白名单的步骤之后,还包括:
步骤A10,判断是否存在所述白名单对应的第二升级定制包;
步骤A20,若不存在所述白名单对应的第二升级定制包,则执行步骤:从所述升级基准包中获取目标文件。
在本实施例中,具体地,根据所述白名单与升级定制包之间的映射关系,在服务器中查询是否存在与所述白名单对应的第二升级定制包,若所述服务器中不存在所述白名单对应的第二升级定制包,则执行步骤:从所述升级基准包中获取目标文件,以制作所述白名单对应的升级定制包,若所述服务器中存在所述白名单对应的第二升级定制包,则结束升级包制作过程,将所述第二升级定制包作为所述白名单对应的升级定制包。
在本实施例中,对于同一白名单信息的不同待测试设备,仅需要制作一个升级定制包,即可适用于同一白名单信息的全部待测试设备,节约了重复制作相同的升级定制包的不必要的时间和服务器资源。
步骤S20,从所述升级基准包中获取目标文件;
在本实施例中,具体地,解压所述升级基准包,确定所述白名单对应的系统属性文件在所述升级基准包中存储的目标分区,从所述目标分区获取目标文件,其中,所述解压的方法包括使用解压工具或unzip命令等,所述目标分区包括system(系统)、vendor(厂家定制)和/或oem(原始制造商)分区等,所述目标文件为与所述白名单中每一个系统属性对应的系统属性文件,容易理解的是,由于白名单中包括一个或多个系统属性,则相应的也会有一个或多个目标文件。
步骤S30,根据所述白名单重置所述目标文件,得到升级定制文件;
在本实施例中,具体地,根据所述白名单中每一个系统属性与各所述目标文件的映射关系,将所述白名单中每一个系统属性的描述信息赋值于对应的所述目标文件,得到与所述白名单中系统属性的描述信息相匹配的目标文件,将新赋值的所述目标文件放回至对应的目标分区,即完成了所述目标文件的重置,得到了与所述白名单相匹配的升级定制文件,其中,所述描述信息为每种系统属性的具体内容,例如ro.product.brand=A,A为所述待升级设备的品牌,即为所述待升级设备白名单中ro.product.brand属性的描述信息,待升级设备不同,白名单的描述信息可能相同或不同。
步骤S40,将所述升级定制文件打包,得到升级定制包。
在本实施例中,具体地,使用zip命令对修改后的升级定制文件进行压缩打包,得到升级定制包。
优选地,所述将所述升级定制文件打包,得到第一升级定制包的步骤包括:
步骤B10,获取密钥;
步骤B20,将所述升级定制文件打包并使用所述密钥进行签名,得到第一升级定制包。
在本实施例中,具体地,获取密钥,将所述升级定制文件压缩打包成定制包,并根据所述密钥通过签名工具(例如openjdk和signapk.jar等)对定制包进行签名,得到具有签名的第一升级定制包,以确保所述待升级设备下载所述第一升级定制包以及使用所述第一升级定制包进行升级的过程中可以顺利完成校验。
在一种可实施的方式中,所述将所述升级定制文件打包的步骤之前,还包括:
为重置后的所述目标文件添加哈希树,并生成新的验证数据镜像文件;
根据所述验证数据镜像文件更新验证数据分区。
在本实施例中,将验证数据分区(vbmeta分区)中的验证数据镜像文件(vbmeta文件)进行同步更新,以确保所述待升级设备下载所述第一升级定制包以及使用所述第一升级定制包进行升级的过程中可以顺利完成校验。
在本实施例中,通过获取升级基准包和待升级设备的白名单,从所述升级基准包中获取目标文件,根据所述白名单重置所述目标文件,得到升级定制文件,将所述升级定制文件打包,得到升级定制包,实现了根据白名单修改升级基准包中对应的目标文件的信息,进而实现了升级基准包中的系统属性与待升级设备的白名单的匹配,进而得到与待升级设备的白名单相匹配的升级定制包,通过本申请的升级包制作方法得到一个升级定制包仅需几分钟,克服了现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题,大大节约了时间、减少了服务器资源的耗费。
进一步地,在本申请升级包制作方法的另一实施例中,参照图2,所述目标文件包括第一目标文件和第二目标文件,所述根据所述白名单信息重置所述目标文件的步骤包括:
步骤S31,根据所述白名单更新所述第一目标文件;
在本实施例中,需要说明的是,所述第一目标文件为所述升级基准包中oem分区中的系统属性文件。
具体地,在所述升级基准包的oem分区中,根据所述白名单中每一个系统属性与oem分区中各所述第一目标文件的映射关系,将所述白名单中每一个系统属性的描述信息赋值于对应的所述第一目标文件,得到与所述白名单中系统属性的描述信息相匹配的第一目标文件。
优选地,所述根据所述白名单信息更新所述第一目标文件的步骤包括:
步骤C10,生成所述第一目标文件对应的第一镜像文件;
在本实施例中,具体地,调用工具将所述第一目标文件转换成所述第一目标文件对应的第一镜像文件。
步骤C20,根据所述白名单重置所述第一镜像文件,根据重置后的第一镜像文件生成新的第一目标文件。
在本实施例中,具体地,将所述第一镜像文件挂载,将所述白名单中每一个系统属性的描述信息赋值于对应的所述第一镜像文件,得到与所述白名单中系统属性的描述信息相匹配的第一镜像文件,进而根据重置后的第一镜像文件生成新的第一目标文件。
步骤S32,根据所述第一目标文件重置所述第二目标文件。
在本实施例中,具体地,获取更新后的所述第一目标文件的描述信息,根据所述第一目标文件的描述信息重置所述第二目标文件,以替换所述第二目标文件的原描述信息,得到被所述第一目标文件的描述信息赋值后的第二目标文件,将新赋值的所述第二目标文件放回至对应的目标分区,即完成了所述第二目标文件的重置,其中,所述第一目标文件为oem分区中与所述白名单中各系统属性对应的系统属性文件,所述第二目标文件为system和vendor分区中与所述第一目标文件对应的系统属性文件,在一种可实施的方式中,通过prop()函数将所述oem文件的oem.prop属性的描述信息赋值于system/build.prop、vendor/build.prop和vendor/odm/etc/build.prop等文件,以重置system/build.prop、vendor/build.prop和vendor/odm/etc/build.prop等文件的描述信息,以实现对第二目标文件的重置。
优选地,所述根据所述第一目标文件重置所述第二目标文件的步骤包括:
步骤D10,生成所述第二目标文件对应的第二镜像文件;
在本实施例中,具体地,调用工具将所述第二目标文件转换成所述第二目标文件对应的第二镜像文件。
优选地,所述生成所述第二目标文件对应的第二镜像文件的步骤包括:
步骤E10,将所述第二目标文件解压成中间文件;
在本实施例中,具体地,所述system和vendor分区中的第二目标文件格式为dat.br格式,使用命令brotli将dat.br格式的所述第二目标文件解压成dat格式的中间文件。
步骤E20,通过预设转换工具将所述中间文件转换成第二镜像文件。
在本实施例中,具体地,借助预设转换工具sdat2img将所述中间文件转换成第二镜像文件。
步骤D20,将所述第一镜像文件的第一属性值中的描述信息赋值于所述第二镜像文件的第二属性值;
在本实施例中,具体地,将所述第二镜像文件挂载,获取更新后的所述第一镜像文件的第一属性值中的描述信息,将所述第一属性值中的描述信息赋值于所述第二镜像文件的第二属性值,以替换所述第二镜像文件的原描述信息,得到被所述第一属性值中的描述信息赋值后的第二镜像文件。
步骤D30,根据所述第二镜像文件生成新的第二目标文件。
在本实施例中,具体地,调用工具将重新赋值后的所述第二镜像文件转换成第二目标文件格式的第三目标文件,并将所述第三目标文件放回至对应的所述第二目标文件的目标分区,成为新的第二目标文件,即完成了所述第二目标文件的重置,在一种可实施的方式中,使用命令img2simg将system.img和vendor.img等转换成Android sparse image,然后通过img2sdat转换成dat文件,最后通过brotli压缩dat文件生成dat.br。
在本实施例中,通过属性传值的方式,仅需建立白名单与一个分区的目标文件的映射关系,通过修改一个分区的目标文件的描述信息,即可完成整个升级包中全部对应的目标文件的描述信息,属性传值的父子关系仅需搭建一次,从而可以节约每一次根据白名单进行升级包全部文件的匹配和修改工作,大大节约了时间、减少了服务器资源的耗费,还可以提高重置目标文件的准确率和正确率。
本申请实施例还提供一种升级包制作装置,所述升级包制作装置应用于升级包制作设备,所述升级包制作装置包括:
白名单获取模块,用于获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;
目标文件获取模块,用于从所述升级基准包中获取目标文件;
目标文件重置模块,用于根据所述白名单重置所述目标文件,得到升级定制文件;
打包模块,用于将所述升级定制文件打包,得到第一升级定制包。
可选地,所述目标文件重置模块还用于:
根据所述白名单更新所述第一目标文件;
根据所述第一目标文件的描述信息重置所述第二目标文件。
可选地,所述目标文件重置模块还用于:
生成所述第一目标文件对应的第一镜像文件;
根据所述白名单重置所述第一镜像文件,根据重置后的第一镜像文件生成新的第一目标文件。
可选地,所述目标文件重置模块还用于:
生成所述第二目标文件对应的第二镜像文件;
将所述第一镜像文件的第一属性值中的描述信息赋值于所述第二镜像文件的第二属性值;
根据所述第二镜像文件生成新的第二目标文件。
可选地,所述目标文件重置模块还用于:
将所述第二目标文件解压成中间文件;
通过预设转换工具将所述中间文件转换成第二镜像文件。
可选地,所述打包模块还用于:
获取密钥;
将所述升级定制文件打包并使用所述密钥进行签名,得到第一升级定制包。
可选地,所述白名单获取模块还用于:
判断是否存在所述白名单对应的第二升级定制包;
若不存在所述白名单对应的第二升级定制包,则执行步骤:从所述升级基准包中获取目标文件。
本发明提供的升级包制作装置,采用上述的升级包制作方法,解决了现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题。与现有技术相比,本发明实施例提供的升级包制作装置的有益效果与上述实施例提供的升级包制作方法的有益效果相同,且该升级包制作装置中的其他技术特征与上一实施例方法公开的特征相同,在此不做赘述。
本发明实施例提供一种电子设备,电子设备包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述实施例中的升级包制作方法。
下面参考图3,其示出了适于用来实现本公开实施例的电子设备的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图3所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等),其可以根据存储在只读存储器(ROM)中的程序或者从存储装置加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有电子设备操作所需的各种程序和数据。处理装置、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
通常,以下系统可以连接至I/O接口:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信装置。通信装置可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图中示出了具有各种系统的电子设备,但是应理解的是,并不要求实施或具备所有示出的系统。可以替代地实施或具备更多或更少的系统。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装,或者从ROM被安装。在该计算机程序被处理装置执行时,执行本公开实施例的方法中限定的上述功能。
本发明提供的电子设备,采用上述实施例中的升级包制作方法,解决了现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题。与现有技术相比,本发明实施例提供的电子设备的有益效果与上述实施例提供的升级包制作方法的有益效果相同,且该电子设备中的其他技术特征与上一实施例方法公开的特征相同,在此不做赘述。
应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
本实施例提供一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,计算机可读程序指令用于执行上述实施例中的升级包制作方法。
本发明实施例提供的计算机可读存储介质例如可以是U盘,但不限于电、磁、光、电磁、红外线、或半导体的系统、系统或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、系统或者器件使用或者与其结合使用。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读存储介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。
上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被电子设备执行时,使得电子设备:获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;从所述升级基准包中获取目标文件;根据所述白名单重置所述目标文件,得到升级定制文件;将所述升级定制文件打包,得到第一升级定制包。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定。
本发明提供的计算机可读存储介质,存储有用于执行上述升级包制作方法的计算机可读程序指令,解决了现有技术为不同设备定制升级包时间长且占用大量服务器资源的技术问题。与现有技术相比,本发明实施例提供的计算机可读存储介质的有益效果与上述实施例提供的升级包制作方法的有益效果相同,在此不做赘述。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利处理范围内。

Claims (10)

1.一种升级包制作方法,其特征在于,所述升级包制作方法包括:
获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;
从所述升级基准包中获取目标文件;
根据所述白名单重置所述目标文件,得到升级定制文件;
将所述升级定制文件打包,得到第一升级定制包。
2.如权利要求1所述升级包制作方法,其特征在于,所述目标文件包括第一目标文件和第二目标文件,所述根据所述白名单重置所述目标文件的步骤包括:
根据所述白名单更新所述第一目标文件;
根据所述第一目标文件重置所述第二目标文件。
3.如权利要求2所述升级包制作方法,其特征在于,所述根据所述白名单更新所述第一目标文件的步骤包括:
生成所述第一目标文件对应的第一镜像文件;
根据所述白名单重置所述第一镜像文件,根据重置后的第一镜像文件生成新的第一目标文件。
4.如权利要求3所述升级包制作,其特征在于,所述根据所述第一目标文件重置所述第二目标文件的步骤包括:
生成所述第二目标文件对应的第二镜像文件;
将所述第一镜像文件的第一属性值中的描述信息赋值于所述第二镜像文件的第二属性值;
根据所述第二镜像文件生成新的第二目标文件。
5.如权利要求4所述升级包制作,其特征在于,所述生成所述第二目标文件对应的第二镜像文件的步骤包括:
将所述第二目标文件解压成中间文件;
通过预设转换工具将所述中间文件转换成第二镜像文件。
6.如权利要求1所述升级包制作方法,其特征在于,所述将所述升级定制文件打包,得到第一升级定制包的步骤包括:
获取密钥;
将所述升级定制文件打包并使用所述密钥进行签名,得到第一升级定制包。
7.如权利要求1所述升级包制作方法,其特征在于,所述获取待升级设备的白名单的步骤之后,还包括:
判断是否存在所述白名单对应的第二升级定制包;
若不存在所述白名单对应的第二升级定制包,则执行步骤:从所述升级基准包中获取目标文件。
8.一种升级包制作装置,其特征在于,所述升级包制作装置包括:
白名单获取模块,用于获取通过空中下载技术进行升级的升级基准包和待升级设备的白名单;
目标文件获取模块,用于从所述升级基准包中获取目标文件;
目标文件重置模块,用于根据所述白名单重置所述目标文件,得到升级定制文件;
打包模块,用于将所述升级定制文件打包,得到第一升级定制包。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至7中任一项所述的升级包制作方法的步骤。
10.一种存储介质,其特征在于,所述存储介质为计算机可读存储介质,所述计算机可读存储介质上存储有实现升级包制作方法的程序,所述实现升级包制作方法的程序被处理器执行以实现如权利要求1至7中任一项所述升级包制作方法的步骤。
CN202111621536.1A 2021-12-23 2021-12-23 升级包制作方法、装置、电子设备及存储介质 Pending CN114443089A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111621536.1A CN114443089A (zh) 2021-12-23 2021-12-23 升级包制作方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111621536.1A CN114443089A (zh) 2021-12-23 2021-12-23 升级包制作方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114443089A true CN114443089A (zh) 2022-05-06

Family

ID=81366623

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111621536.1A Pending CN114443089A (zh) 2021-12-23 2021-12-23 升级包制作方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114443089A (zh)

Similar Documents

Publication Publication Date Title
CN105302587A (zh) 数据更新方法及装置
CN111722885B (zh) 程序运行方法、装置以及电子设备
CN107239309B (zh) 补丁生成方法及装置、更新方法、电子设备、存储介质
CN110865837B (zh) 一种进行系统升级的方法和终端
CN111367516B (zh) 应用界面生成方法、装置及电子设备
CN105323269A (zh) 安卓系统中app的更新方法、终端及存储介质
CN111240766B (zh) 应用启动方法、装置、电子设备及计算机可读存储介质
US20220334815A1 (en) Accelerating application and sub-package installations
CN108733370B (zh) 原生app的样式化显示方法、装置、终端及存储介质
CN115981613A (zh) 多硬件设备软件适配方法、电子设备及可读存储介质
CN107426588B (zh) 一种获取电视机配置信息方法、系统及存储装置
CN110990038B (zh) 用于应用局部更新的方法、装置、电子设备和介质
CN110489162B (zh) 安装包so文件精简方法、装置、介质和设备
CN111309406A (zh) 应用程序的事件处理方法、装置及电子设备
CN114443089A (zh) 升级包制作方法、装置、电子设备及存储介质
CN109032651B (zh) 应用更新方法、智能终端及计算机可读存储介质
CN114610366A (zh) 一种差分包升级方法、系统、智能电子设备和存储介质
CN109669720B (zh) 基于Promise的链式异步请求处理方法、装置及电子设备
CN111290812B (zh) 应用控件的显示方法、装置、终端及存储介质
CN109413714B (zh) 用户代理信息的处理方法、装置、存储介质及终端
CN114793227B (zh) 车载软件下载方法、电子设备及计算机可读存储介质
CN113032046A (zh) so文件的修复方法、装置、设备及存储介质
CN112732365A (zh) 预装应用程序启动方法、装置、电子设备及存储介质
CN113760338B (zh) 切换应用程序二进制接口abi的方法、装置及电子设备
CN110908711A (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