[go: up one dir, main page]

WO2019041891A1 - Method and device for generating upgrade package - Google Patents

Method and device for generating upgrade package Download PDF

Info

Publication number
WO2019041891A1
WO2019041891A1 PCT/CN2018/087148 CN2018087148W WO2019041891A1 WO 2019041891 A1 WO2019041891 A1 WO 2019041891A1 CN 2018087148 W CN2018087148 W CN 2018087148W WO 2019041891 A1 WO2019041891 A1 WO 2019041891A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
upgrade package
signature
modify
object file
Prior art date
Application number
PCT/CN2018/087148
Other languages
French (fr)
Chinese (zh)
Inventor
刘路
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2019041891A1 publication Critical patent/WO2019041891A1/en

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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Definitions

  • This document relates to, but is not limited to, the field of computers, and in particular, to a method and apparatus for generating an upgrade package.
  • the software version of the mobile terminal generally needs to be updated accordingly, which can satisfy the user's use requirements and improve the user experience.
  • the Android mobile device has an application software that is upgraded in the air.
  • the application software interacts with the corresponding server, searches for the upgrade package stored on the server, downloads the upgrade package, and upgrades to the new version through the recovery recovery mode of the mobile terminal, thereby Reach the purpose of updating the system version.
  • a method for generating an upgrade package includes: determining whether a signature object file exists in a root directory; and deactivating the signature object file and deleting an IMAGES thereof when the signature object file exists Directory, and modify the contents of the file to be upgraded; use the specified script to regenerate the system image and generate an upgrade package.
  • an apparatus for generating an upgrade package comprising: a determining module, configured to determine whether a signature object file exists in a root directory; and a first processing module configured to present the signature object file Decompressing the signature object file, deleting the IMAGES directory, and modifying the content of the file to be upgraded; the first generation module is configured to regenerate the system image using the specified script and generate an upgrade package.
  • a storage medium is also provided.
  • the storage medium is arranged to store program code for performing the following steps:
  • FIG. 1 is a flowchart of a method for generating an upgrade package according to an embodiment of the present invention
  • FIG. 2 is a structural block diagram of an apparatus for generating an upgrade package according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a data flow according to an embodiment of the present invention.
  • Google's upgrade plan is to download the upgrade package to the cache cache partition of the mobile terminal through Gota (Google's own over-the-air software upgrade) server (if the cache partition is insufficient, it will be downloaded to the data data partition), now Google's L and M platform is based on block devices to make upgrade packages, the upgrade package is relatively large, especially cross-platform upgrades, such as Android L upgrade to M, the upgrade package made to reach about 1G. Even the upgrade packages made on the same platform are generally above 20M, mostly between 20M and 250M. This problem will come. If you need to make an upgrade package of about 3M, it will be more difficult.
  • the upgrade package size can only be a specific size (for example, the US operator AT&T needs 3M, 50M, 500M size upgrade package).
  • the current easy way to think of is to always compile the version of the specific requirements, and then go to the upgrade package again, so repeatedly try to do the version, and then do the package, maybe make an upgrade package that meets the capacity size, which will waste a lot of time, 50M and A 500M upgrade can be made, but a 3M upgrade can hardly be made.
  • a recompiled version where the system system image is an ext4 file system, even if the content is identical, from a binary point of view is completely different, such as a file / system / build.prop storage block absolute address is not Similarly, even a file may be stored on a different physical address, so the difference between the two versions based on the block device is generally very large, which is why it is difficult to make a 3M package.
  • FIG. 1 is a flowchart of a method for generating an upgrade package according to an embodiment of the present invention. As shown in FIG. 1, the process includes the following steps:
  • Step S102 determining whether a signature object file exists in the root directory
  • Step S104 when the signature object file exists, decompress the signature object file, delete the mirror IMAGES directory therein, and modify the file content to be upgraded;
  • step S106 the system image is regenerated using the specified script, and an upgrade package is generated.
  • the signature target file is decompressed, the IMAGES directory is deleted, the content of the file to be upgraded is modified, the system image is regenerated using the specified script, and an upgrade package is generated. It is implemented to generate a specific size upgrade package when building an upgrade package based on a block.
  • the execution body of the above steps may be a terminal, an upgrade tool, or the like, but is not limited thereto.
  • the specified script in this embodiment may be an img_from_target_files script.
  • the method includes:
  • the modified file content includes at least one of the following: modifying the SYSTEM file; modifying the build.prop file; modifying the external version number information of the SYSTEM file; and modifying the external version number information of the build.prop file.
  • the method further includes:
  • the method further includes:
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
  • a storage medium such as ROM/RAM, disk
  • the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
  • the embodiment of the present invention further provides an apparatus for generating an upgrade package, which is configured to implement the foregoing embodiments, and details are not described herein.
  • the term "module” may implement a combination of software and/or hardware of a predetermined function.
  • the devices described in the following embodiments are preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
  • FIG. 2 is a structural block diagram of an apparatus for generating an upgrade package according to an embodiment of the present invention. As shown in FIG. 2, the apparatus includes:
  • the determining module 20 is configured to determine whether a signature object file exists in the root directory
  • the first processing module 22 is configured to: when the signature object file exists, decompress the signature object file, delete the IMAGES directory therein, and modify the file content to be upgraded;
  • the first generation module 24 is configured to regenerate the system image using the specified script and generate an upgrade package.
  • the device further includes: a second processing module, configured to convert the system image to the ext4 format when the signature object file does not exist in the root directory, and find the absolute address of the file to be modified through the system.map; the second generation module is set to Use the winhex tool to modify the contents of the file in the system directory, generate a new system image, convert to the sparse format, and generate an upgrade package.
  • a second processing module configured to convert the system image to the ext4 format when the signature object file does not exist in the root directory, and find the absolute address of the file to be modified through the system.map
  • the second generation module is set to Use the winhex tool to modify the contents of the file in the system directory, generate a new system image, convert to the sparse format, and generate an upgrade package.
  • the device may further include: adding a module, configured to add a predetermined capacity binary data to the upgrade package to obtain a specified upgrade package after generating the upgrade package; and the signature module is configured to use the signature script to sign the specified upgrade package.
  • each of the above modules may be implemented by software or hardware.
  • the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the above modules are in any combination.
  • the forms are located in different processors.
  • FIG. 3 is a schematic diagram of the data flow of the embodiment of the present invention.
  • a set boot, a recovery and a system directory suffix are A.zip.
  • the format file (called the signature object file (signed-target-files.zip file)), if the file is not deleted, and the content has not been modified, first extract the A.zip file, extract the IMAGES directory after decompression If you do not delete the IMAGES directory, you will use the bootimage, recoveryimage and systemimage images that have been generated. Any changes will not take effect; then modify the contents of the file to be modified, for example, modify the SYSTEM/build.prop file.
  • External version number information, etc. recompress the decompressed file directory.
  • the ry command is used to add the -ry parameter to avoid loss of the soft connection in the system image.
  • the embodiment of the invention further provides an upgrade scheme for an Android device to read an upgrade package from an encrypted external T card.
  • the method flow of the upgrade program includes:
  • Step S101 Compile a complete USER version according to Android, generate an A.zip (generally signed-target-files.zip file) file under the root directory, and copy one copy to fota-target-files.zip; Among them, fota (Firmware Over-The-Air) is an over-the-air software upgrade for mobile terminals.
  • A.zip generally signed-target-files.zip file
  • Step S102 Each time the user version is output, the signed-target-files.zip is generated in the root directory to determine whether the file signed-target-files.zip exists. If not, step S103 is performed, and if yes, the steps are executed. S106;
  • Step S103 First, use simg2img to convert the system image to ext4 format, and find the absolute address of the file to be modified through system.map.
  • System.map is an address table for storing all files, such as /system/build.prop 851944-851946, Means the two blocks 851944 and 851945 (excluding 851946) that are stored from the beginning in 4K;
  • Step S104 Use the winhex tool to open the system image in the ext4 format, and modify the file contents in the system image, and the original character length cannot be changed.
  • Id Z831V1.0.0B2*, can't add or extend new characters, because newly added characters will cause data overflow and terminator loss, etc., the device will not boot when upgraded;
  • Step S105 After generating a new system image, use the img2simg command to convert the ext4 format to the sparse format, and package the system image into a new version. Only the system image is different between the previous version and the previous version, and step S111 is performed;
  • Step S106 copy and rename to fota-target-files.zip;
  • Step S107 Decompress fota-target-files.zip and delete the IMAGES folder and the contents therein. If it is not deleted, the bootimage, recoveryimage and systemimage images that have been generated will be used, so that subsequent modifications will not take effect.
  • Step S108 Modify the following files to be modified in the fota-target-files directory, for example, the SYSTEM/build.prop file, modify the external version number, and note that the file attributes before and after the modification are consistent with the previous ones;
  • Step S109 Pack all the files in the fota-target-files directory, and note that the zip-ry fota-target-files_new.zip./ command is used in the fota-target-files directory, where r means that the subdirectories of each level are valid.
  • the y parameter means to retain all existing soft links;
  • Step S110 In the root directory of the android compiler environment, call the following command, sudo./build/tools/releasetools/img_from_target_files fota-target-files_new.zip fota_img.zip, and the newly generated system in the newly generated fota_img.zip. Img and system.map, copy out to replace the corresponding image in the original version, thus generating a new target version;
  • Step S111 Re-create the upgrade package by using the package script, and let the Android device upgrade the version, and then check whether the expected effect is achieved after the upgrade;
  • Step S112 If a larger upgrade package is needed, you can insert binary data of the appropriate capacity into it, and then use the signature script to re-sign the upgrade package, let the Android device upgrade the version, and insert the data during the upgrade process. Will not be written to the Android device;
  • the embodiment of the invention further provides a storage medium.
  • the above storage medium may be configured to store program code for performing the following steps:
  • the storage medium may include: a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.
  • ROM read-only memory
  • RAM random access memory
  • mobile hard disk a magnetic disk
  • optical disk a magnetic disk
  • the processor may perform determining whether the signature object file exists in the root directory according to the stored program code in the storage medium;
  • the processor may execute, according to the stored program code in the storage medium, when the signature object file exists, decompress the signature object file, delete the IMAGES directory therein, and modify the file content to be upgraded;
  • the processor may regenerate the system image using the specified script according to the stored program code in the storage medium, and generate an upgrade package.
  • Computer storage medium includes volatile and nonvolatile, implemented in any method or technology for storing information, such as computer readable instructions, data structures, program modules, or other data. , removable and non-removable media.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridge, magnetic tape, magnetic disk storage or other magnetic storage device, or may Any other medium used to store the desired information and that can be accessed by the computer.
  • communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and can include any information delivery media.
  • a modulated data signal such as a carrier wave or other transport mechanism

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Provided are a method and device for generating an upgrade package. The method comprises: determining whether a signed target file exists under a root directory (S102); if so, decompressing the signed target file, deleting an IMAGES directory therein, and modifying a content of a file to be upgraded (S104); and using a specified script to regenerate a system mirror, and generating an upgrade package (S106).

Description

升级包的生成方法及装置Method and device for generating upgrade package 技术领域Technical field
本文涉及但不限于计算机领域,具体而言,涉及一种升级包的生成方法及装置。This document relates to, but is not limited to, the field of computers, and in particular, to a method and apparatus for generating an upgrade package.
背景技术Background technique
随着Android版本不断的更新,移动终端的软件版本一般也需要随之更新,这样能满足用户的使用需求,提高用户体验等。一般Android移动设备都有空中升级的应用软件,这个应用软件会跟对应的服务器交互,搜索到服务器上面存放的升级包,下载此升级包并且通过移动终端的恢复recovery模式升级到新的版本,从而达到更新系统版本的目的。As the Android version is continuously updated, the software version of the mobile terminal generally needs to be updated accordingly, which can satisfy the user's use requirements and improve the user experience. Generally, the Android mobile device has an application software that is upgraded in the air. The application software interacts with the corresponding server, searches for the upgrade package stored on the server, downloads the upgrade package, and upgrades to the new version through the recovery recovery mode of the mobile terminal, thereby Reach the purpose of updating the system version.
发明概述Summary of invention
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。The following is an overview of the topics detailed in this document. This Summary is not intended to limit the scope of the claims.
根据本发明的一个实施例,提供了一种升级包的生成方法,包括:判断根目录下是否存在签名目标文件;在存在所述签名目标文件时,解压所述签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容;使用指定脚本重新生成系统镜像,并生成升级包。According to an embodiment of the present invention, a method for generating an upgrade package includes: determining whether a signature object file exists in a root directory; and deactivating the signature object file and deleting an IMAGES thereof when the signature object file exists Directory, and modify the contents of the file to be upgraded; use the specified script to regenerate the system image and generate an upgrade package.
根据本发明的另一个实施例,提供了一种升级包的生成装置,包括:判断模块,设置为判断根目录下是否存在签名目标文件;第一处理模块,设置为在存在所述签名目标文件时,解压所述签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容;第一生成模块,设置为使用指定脚本重新生成系统镜像,并生成升级包。According to another embodiment of the present invention, there is provided an apparatus for generating an upgrade package, comprising: a determining module, configured to determine whether a signature object file exists in a root directory; and a first processing module configured to present the signature object file Decompressing the signature object file, deleting the IMAGES directory, and modifying the content of the file to be upgraded; the first generation module is configured to regenerate the system image using the specified script and generate an upgrade package.
根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:According to still another embodiment of the present invention, a storage medium is also provided. The storage medium is arranged to store program code for performing the following steps:
判断根目录下是否存在签名目标文件;Determine whether a signature object file exists in the root directory;
在存在所述签名目标文件时,解压所述签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容;When the signature object file exists, decompress the signature object file, delete the IMAGES directory therein, and modify the file content to be upgraded;
使用指定脚本重新生成系统镜像,并生成升级包。Regenerate the system image with the specified script and generate an upgrade package.
在阅读并理解了附图和详细描述后,可以明白其他方面。Other aspects will be apparent upon reading and understanding the drawings and detailed description.
附图概述BRIEF abstract
图1是根据本发明实施例的升级包的生成方法的流程图;1 is a flowchart of a method for generating an upgrade package according to an embodiment of the present invention;
图2是根据本发明实施例的升级包的生成装置的结构框图;2 is a structural block diagram of an apparatus for generating an upgrade package according to an embodiment of the present invention;
图3是本发明实施例的数据流程示意图。FIG. 3 is a schematic diagram of a data flow according to an embodiment of the present invention.
详述Detailed
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。The invention will be described in detail below with reference to the drawings in conjunction with the embodiments. It should be noted that the embodiments in the present application and the features in the embodiments may be combined with each other without conflict.
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。It is to be understood that the terms "first", "second", and the like in the specification and claims of the present invention are used to distinguish similar objects, and are not necessarily used to describe a particular order or order.
目前,Google的升级方案是把升级包通过Gota(Google自己的空中下载软件升级)服务器下载到移动终端的缓存cache分区中(如果cache分区不够会下载到数据data分区中),现在Google的L和M平台都是基于块设备进行制作升级包的,所做出来的升级包比较大,尤其是跨平台的升级,比如Android L升级到M,做出来的升级包都达到1G左右。即使在同平台上面制作的升级包,一般也都在20M以上,大都是在20M到250M之间,这样问题就来了,要是需要制作3M左右的升级包难度会比较大,实际上为了解决某些特定的问题,或者满足用户的特定需求,升级包大小只能为特定的大小(比如说美国运行商AT&T需要3M,50M,500M大小的升级包)。目前容易想到的方法就是一直编译特定需求的版本,然后再次去做升级包,这样反复尝试去做版本,再做包,也许可能做出符合容量大小的升级包,这 样会浪费很多时间,50M和500M大小的升级包可以做出来,但3M大小的升级包几乎是不能制作出来的。重新编译的一个版本,其中的系统system镜像是一个ext4的文件系统,即便内容完全相同,从二进制的角度来看是完全不相同的,比如一个文件/system/build.prop存放块的绝对地址不一样,甚至一个文件可能存放在不同的物理地址上面,所以前后两个版本基于块设备做包差异一般都是非常大的,这就是很难做出3M大小包的原因。At present, Google's upgrade plan is to download the upgrade package to the cache cache partition of the mobile terminal through Gota (Google's own over-the-air software upgrade) server (if the cache partition is insufficient, it will be downloaded to the data data partition), now Google's L and M platform is based on block devices to make upgrade packages, the upgrade package is relatively large, especially cross-platform upgrades, such as Android L upgrade to M, the upgrade package made to reach about 1G. Even the upgrade packages made on the same platform are generally above 20M, mostly between 20M and 250M. This problem will come. If you need to make an upgrade package of about 3M, it will be more difficult. In fact, in order to solve some For specific problems, or to meet the specific needs of users, the upgrade package size can only be a specific size (for example, the US operator AT&T needs 3M, 50M, 500M size upgrade package). The current easy way to think of is to always compile the version of the specific requirements, and then go to the upgrade package again, so repeatedly try to do the version, and then do the package, maybe make an upgrade package that meets the capacity size, which will waste a lot of time, 50M and A 500M upgrade can be made, but a 3M upgrade can hardly be made. A recompiled version, where the system system image is an ext4 file system, even if the content is identical, from a binary point of view is completely different, such as a file / system / build.prop storage block absolute address is not Similarly, even a file may be stored on a different physical address, so the difference between the two versions based on the block device is generally very large, which is why it is difficult to make a 3M package.
在本实施例中提供了一种升级包的生成方法,图1是根据本发明实施例的升级包的生成方法的流程图,如图1所示,该流程包括如下步骤:In this embodiment, a method for generating an upgrade package is provided. FIG. 1 is a flowchart of a method for generating an upgrade package according to an embodiment of the present invention. As shown in FIG. 1, the process includes the following steps:
步骤S102,判断根目录下是否存在签名目标文件;Step S102, determining whether a signature object file exists in the root directory;
步骤S104,在存在签名目标文件时,解压签名目标文件,删除其中的镜像IMAGES目录,并修改待升级的文件内容;Step S104, when the signature object file exists, decompress the signature object file, delete the mirror IMAGES directory therein, and modify the file content to be upgraded;
步骤S106,使用指定脚本重新生成系统镜像,并生成升级包。In step S106, the system image is regenerated using the specified script, and an upgrade package is generated.
通过上述步骤,在存在签名目标文件时,解压签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容,使用指定脚本重新生成系统镜像,并生成升级包。实现了在基于块制作升级包时生成特定大小的升级包。Through the above steps, when the signature object file exists, the signature target file is decompressed, the IMAGES directory is deleted, the content of the file to be upgraded is modified, the system image is regenerated using the specified script, and an upgrade package is generated. It is implemented to generate a specific size upgrade package when building an upgrade package based on a block.
上述步骤的执行主体可以为终端,升级工具等,但不限于此。The execution body of the above steps may be a terminal, an upgrade tool, or the like, but is not limited thereto.
本实施例中的指定脚本可以是img_from_target_files脚本。The specified script in this embodiment may be an img_from_target_files script.
本实施例中,作为另外一个实施场景,包括:In this embodiment, as another implementation scenario, the method includes:
S11,在根目录下不存在签名目标文件时,把系统镜像转换为ext4格式,并通过system.map查找待修改文件的绝对地址;S11: When the signature object file does not exist in the root directory, the system image is converted to the ext4 format, and the absolute address of the file to be modified is searched through the system.map;
S12,使用winhex工具修改system目录中的文件内容,生成新的系统镜像后转换为sparse格式,并生成升级包。S12, use the winhex tool to modify the contents of the file in the system directory, generate a new system image, convert to the sparse format, and generate an upgrade package.
在本实施例中,修改升级的文件内容包括以下至少之一:修改SYSTEM文件;修改build.prop文件;修改SYSTEM文件的外部版本号信息;修改build.prop文件的外部版本号信息。In this embodiment, the modified file content includes at least one of the following: modifying the SYSTEM file; modifying the build.prop file; modifying the external version number information of the SYSTEM file; and modifying the external version number information of the build.prop file.
在本实施例中,在生成升级包之后,在前一次生成的升级包没有符合特 定大小的要求时,还包括:In this embodiment, after the upgrade package is generated, when the previously generated upgrade package does not meet the requirements of a specific size, the method further includes:
S21,在升级包中加入预定容量的二进制数据得到指定升级包;加进去的二进制数据可以是无用的数据,在使用升级包升级时终端可以自动识别并删除所述二进制数据;S21, adding a predetermined amount of binary data to the upgrade package to obtain a specified upgrade package; the added binary data may be useless data, and the terminal may automatically identify and delete the binary data when using the upgrade package upgrade;
S22,使用签名脚本给指定升级包签名。S22, using a signature script to sign the specified upgrade package.
在解压签名目标文件之前,所述方法还包括:Before decompressing the signature object file, the method further includes:
S31,拷贝一份签名目标文件到指定存储设备,并重新命名拷贝版本的签名目标文件;S31, copying a signature object file to the specified storage device, and renaming the copy version of the signature object file;
S32,将拷贝版本的签名目标文件确定为待解压的签名目标文件。S32. Determine a copy target signature target file as the signature target file to be decompressed.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the method of the foregoing embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, can also be through hardware, but in many cases, the former is more Good implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
本发明实施例还提供了一种升级包的生成装置,该装置设置为实现上述实施例,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。The embodiment of the present invention further provides an apparatus for generating an upgrade package, which is configured to implement the foregoing embodiments, and details are not described herein. As used below, the term "module" may implement a combination of software and/or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
图2是根据本发明实施例的升级包的生成装置的结构框图,如图2所示,该装置包括:2 is a structural block diagram of an apparatus for generating an upgrade package according to an embodiment of the present invention. As shown in FIG. 2, the apparatus includes:
判断模块20,设置为判断根目录下是否存在签名目标文件;The determining module 20 is configured to determine whether a signature object file exists in the root directory;
第一处理模块22,设置为在存在签名目标文件时,解压签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容;The first processing module 22 is configured to: when the signature object file exists, decompress the signature object file, delete the IMAGES directory therein, and modify the file content to be upgraded;
第一生成模块24,设置为使用指定脚本重新生成系统镜像,并生成升 级包。The first generation module 24 is configured to regenerate the system image using the specified script and generate an upgrade package.
装置还包括:第二处理模块,设置为在根目录下不存在签名目标文件时,把系统镜像转换为ext4格式,并通过system.map查找待修改文件的绝对地址;第二生成模块,设置为使用winhex工具修改system目录中的文件内容,生成新的系统镜像后转换为sparse格式,并生成升级包。The device further includes: a second processing module, configured to convert the system image to the ext4 format when the signature object file does not exist in the root directory, and find the absolute address of the file to be modified through the system.map; the second generation module is set to Use the winhex tool to modify the contents of the file in the system directory, generate a new system image, convert to the sparse format, and generate an upgrade package.
装置还可以包括:添加模块,设置为在生成升级包之后,在升级包中加入预定容量的二进制数据得到指定升级包;签名模块,设置为使用签名脚本给指定升级包签名。The device may further include: adding a module, configured to add a predetermined capacity binary data to the upgrade package to obtain a specified upgrade package after generating the upgrade package; and the signature module is configured to use the signature script to sign the specified upgrade package.
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。It should be noted that each of the above modules may be implemented by software or hardware. For the latter, the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the above modules are in any combination. The forms are located in different processors.
下面以一个应用示例对上述实施例进行说明。The above embodiment will be described below with an application example.
本应用示例中制作特定升级包可以是USER版本,其他版本也可以,图3是本发明实施例的数据流程示意图,编译版本的时候会生成一个集合boot,recovery和system目录的后缀为A.zip格式的文件(叫做签名目标文件(signed-target-files.zip文件)),如果没有删除这个文件,并且其中的内容没有发生过修改,先解压A.zip这个文件,解压后删除其中的IMAGES目录,要是不删除其中的IMAGES目录就会使用其中已经生成的bootimage,recoveryimage和systemimage镜像,任何修改都不会生效;然后去修改需要改的文件内容,比如说修改SYSTEM/build.prop这个文件中的外部版本号信息等,重新压缩解压后的文件目录,注意使用zip命令的时候加-ry参数,以免造成system镜像中的软连接丢失,使用Google的img_from_target_files.py脚本重新生成新的systemimage等镜像。The specific upgrade package in this application example may be the USER version, and other versions may be used. FIG. 3 is a schematic diagram of the data flow of the embodiment of the present invention. When the version is compiled, a set boot, a recovery and a system directory suffix are A.zip. The format file (called the signature object file (signed-target-files.zip file)), if the file is not deleted, and the content has not been modified, first extract the A.zip file, extract the IMAGES directory after decompression If you do not delete the IMAGES directory, you will use the bootimage, recoveryimage and systemimage images that have been generated. Any changes will not take effect; then modify the contents of the file to be modified, for example, modify the SYSTEM/build.prop file. External version number information, etc., recompress the decompressed file directory. Note that the ry command is used to add the -ry parameter to avoid loss of the soft connection in the system image. Use Google's img_from_target_files.py script to regenerate the new systemimage and other images.
把生成的新的镜像打包到原先的版本中,替换原先的systemimage镜像,并重命名版本名称,这两者之间制作基于块设备的升级包,因为前后版本的systemimage镜像出自于一个system目录,形成的system镜像中的文件顺序和大小是一样的,修改其中不多的文件,且每个文件大小没有超过原先4K 大小,所以基于块设备方式制作的升级包会比较小。Package the generated new image into the original version, replace the original systemimage image, and rename the version name. Create a block-based upgrade package between the two, because the systemimage image of the previous and subsequent versions comes from a system directory. The file order and size in the system image are the same. Modifying a few files, and each file size does not exceed the original 4K size, so the upgrade package based on the block device mode will be smaller.
当基于某种原因A.zip这个文件被删除,就不能基于上面这种方法了,可以使用原先的system镜像以及对应的system.map来生成新的镜像。System.map是一个存放所有文件的地址表,比如/system/build.prop851944-851946,是指存放在以4K为单位从头开始的第851944和851945这两个块(不包括851946),这样就可以用winhex工具打开system.img.ext4镜像(需要先从sparse格式转化为ext4),找到对应的地址修改相应的数值,但是这种方法只能替换原先值,比如ro.build.display.id=Z831V1.0.0B24改变为ro.build.display.id=Z831V1.0.0B2*,不能增加或者延长新的字符,因为新添加字符会导致数据溢出和结束符丢失等问题,设备升级后会导致没法开机。When the A.zip file is deleted for some reason, it cannot be based on the above method. You can use the original system image and the corresponding system.map to generate a new image. System.map is an address table for storing all files, such as /system/build.prop851944-851946, which means that the two blocks 851944 and 851945 (excluding 851946) are stored from the beginning in 4K, so that Open the system.img.ext4 image with the winhex tool (you need to convert from the sparse format to ext4), find the corresponding address and modify the corresponding value, but this method can only replace the original value, such as ro.build.display.id=Z831V1 .0.0B24 changed to ro.build.display.id=Z831V1.0.0B2*, you can't add or extend new characters, because newly added characters will cause data overflow and terminator loss, etc., the device will not boot after upgrading. .
本发明实施例还提供了一种Android设备从加密外置T卡读取升级包的升级方案。该升级方案的方法流程包括:The embodiment of the invention further provides an upgrade scheme for an Android device to read an upgrade package from an encrypted external T card. The method flow of the upgrade program includes:
步骤S101:按照Android编译一个完整的USER版本,在根目录下面生成A.zip(一般是signed-target-files.zip这个文件)文件,拷贝一份将其改名为fota-target-files.zip;其中,fota(Firmware Over-The-Air)为移动终端的空中下载软件升级。Step S101: Compile a complete USER version according to Android, generate an A.zip (generally signed-target-files.zip file) file under the root directory, and copy one copy to fota-target-files.zip; Among them, fota (Firmware Over-The-Air) is an over-the-air software upgrade for mobile terminals.
步骤S102:每次在出user版本的时候都会在根目录下生成signed-target-files.zip,判断是否存在文件signed-target-files.zip,若不存在,执行步骤S103,若存在,执行步骤S106;Step S102: Each time the user version is output, the signed-target-files.zip is generated in the root directory to determine whether the file signed-target-files.zip exists. If not, step S103 is performed, and if yes, the steps are executed. S106;
步骤S103:先使用simg2img把system镜像转换为ext4格式,通过system.map找到需要修改文件的绝对地址,System.map是一个存放所有文件的地址表,比如/system/build.prop 851944-851946,是指存放在以4K为单位从头开始的第851944和851945这两个块(不包括851946);Step S103: First, use simg2img to convert the system image to ext4 format, and find the absolute address of the file to be modified through system.map. System.map is an address table for storing all files, such as /system/build.prop 851944-851946, Means the two blocks 851944 and 851945 (excluding 851946) that are stored from the beginning in 4K;
步骤S104:使用winhex工具打开ext4格式的system镜像,修改的system镜像其中的文件内容,不能改变原有字符长度,比如ro.build.display.id=Z831V1.0.0B24改变为ro.build.display.id=Z831V1.0.0B2*, 不能增加或者延长新的字符,因为新添加字符会导致数据溢出和结束符丢失等问题,设备升级后会导致没法开机;Step S104: Use the winhex tool to open the system image in the ext4 format, and modify the file contents in the system image, and the original character length cannot be changed. For example, ro.build.display.id=Z831V1.0.0B24 is changed to ro.build.display. Id=Z831V1.0.0B2*, can't add or extend new characters, because newly added characters will cause data overflow and terminator loss, etc., the device will not boot when upgraded;
步骤S105:生成新的system镜像后,再次使用img2simg命令将ext4格式转换为sparse格式,把此system镜像打包为一个新的版本,此版本与之前的版本之间只有system镜像不同,执行步骤S111;Step S105: After generating a new system image, use the img2simg command to convert the ext4 format to the sparse format, and package the system image into a new version. Only the system image is different between the previous version and the previous version, and step S111 is performed;
步骤S106:拷贝并重命名为fota-target-files.zip;Step S106: copy and rename to fota-target-files.zip;
步骤S107:解压fota-target-files.zip并删除掉IMAGES文件夹及里面的内容,要是不删除掉就会使用其中已经生成的bootimage,recoveryimage和systemimage镜像,导致后续修改不会生效。Step S107: Decompress fota-target-files.zip and delete the IMAGES folder and the contents therein. If it is not deleted, the bootimage, recoveryimage and systemimage images that have been generated will be used, so that subsequent modifications will not take effect.
步骤S108:修改fota-target-files目录中下面需要修改的文件,比如说SYSTEM/build.prop文件,修改其中的外部版本号,注意修改前后文件属性与之前一致;Step S108: Modify the following files to be modified in the fota-target-files directory, for example, the SYSTEM/build.prop file, modify the external version number, and note that the file attributes before and after the modification are consistent with the previous ones;
步骤S109:打包fota-target-files目录里面的所有文件,注意在fota-target-files目录下使用zip-ry fota-target-files_new.zip./命令,其中的r是指各级子目录有效,y参数的意思是指保留原有的所有软连接;Step S109: Pack all the files in the fota-target-files directory, and note that the zip-ry fota-target-files_new.zip./ command is used in the fota-target-files directory, where r means that the subdirectories of each level are valid. The y parameter means to retain all existing soft links;
步骤S110:在android编译环境的根目录下调用如下命令,sudo./build/tools/releasetools/img_from_target_files fota-target-files_new.zip fota_img.zip,在新生成的fota_img.zip中有新生成的system.img和system.map,拷贝出来替换原先的版本中对应的镜像,从而生成新的目标版本;Step S110: In the root directory of the android compiler environment, call the following command, sudo./build/tools/releasetools/img_from_target_files fota-target-files_new.zip fota_img.zip, and the newly generated system in the newly generated fota_img.zip. Img and system.map, copy out to replace the corresponding image in the original version, thus generating a new target version;
步骤S111:使用做包脚本重新制作升级包,让Android设备升级此版本,升级后看看是否达到预期效果;Step S111: Re-create the upgrade package by using the package script, and let the Android device upgrade the version, and then check whether the expected effect is achieved after the upgrade;
步骤S112:如果需要更大的升级包,可以向其中塞入合适容量大小的二进制数据,然后使用签名脚本重新给此升级包签名一下,让Android设备去升级此版本,升级过程中塞入的数据并不会写入Android设备中;Step S112: If a larger upgrade package is needed, you can insert binary data of the appropriate capacity into it, and then use the signature script to re-sign the upgrade package, let the Android device upgrade the version, and insert the data during the upgrade process. Will not be written to the Android device;
先按照上面的方法制作特定大小的升级包,再将一张普通的外置T卡插入到移动终端中,然后通过MTP拷贝方式等,将此升级包拷贝到这张T卡上,将升级包改名为update.zip,升级之前先看下设备的版本号。需要升级 的移动Android设备可以通过设置模块下系统更新按钮检测到此升级包,系统上层会调用系统重启进入recovery模式进行升级,会看到小机器人不断转动,进度条会显示从0%升级到100%,升级后外置T卡中的升级包会被删除掉,不影响用户使用T卡数据区,升级后开机再看下设备的版本号是否发生变化。First, create a specific size upgrade package according to the above method, then insert a normal external T card into the mobile terminal, and then copy the upgrade package to this T card through MTP copy mode, etc., and upgrade the package. Renamed update.zip, look at the version number of the device before upgrading. The mobile Android device that needs to be upgraded can detect the upgrade package by setting the system update button under the module. The upper layer of the system will call the system to reboot into the recovery mode for upgrade. The small robot will continue to rotate and the progress bar will display the upgrade from 0% to 100. %, after the upgrade, the upgrade package in the external T card will be deleted, it will not affect the user to use the T card data area. After the upgrade, the device will change the version number of the device.
本发明实施例还提供了一种存储介质。在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:The embodiment of the invention further provides a storage medium. In this embodiment, the above storage medium may be configured to store program code for performing the following steps:
S1,判断根目录下是否存在签名目标文件;S1, determining whether a signature object file exists in the root directory;
S2,在存在签名目标文件时,解压签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容;S2, when the signature object file exists, decompress the signature object file, delete the IMAGES directory therein, and modify the content of the file to be upgraded;
S3,使用指定脚本重新生成系统镜像,并生成升级包。S3, regenerate the system image using the specified script and generate an upgrade package.
在本实施例中,上述存储介质可以包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。In this embodiment, the storage medium may include: a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk. The medium in which the program code is stored.
在本实施例中,处理器可以根据存储介质中已存储的程序代码执行判断根目录下是否存在签名目标文件;In this embodiment, the processor may perform determining whether the signature object file exists in the root directory according to the stored program code in the storage medium;
在本实施例中,处理器可以根据存储介质中已存储的程序代码执行在存在签名目标文件时,解压签名目标文件,删除其中的IMAGES目录,并修改待升级的文件内容;In this embodiment, the processor may execute, according to the stored program code in the storage medium, when the signature object file exists, decompress the signature object file, delete the IMAGES directory therein, and modify the file content to be upgraded;
在本实施例中,处理器可以根据存储介质中已存储的程序代码执行使用指定脚本重新生成系统镜像,并生成升级包。In this embodiment, the processor may regenerate the system image using the specified script according to the stored program code in the storage medium, and generate an upgrade package.
本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。For specific examples in this embodiment, reference may be made to the examples described in the foregoing embodiments and the optional embodiments, and details are not described herein again.
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步 骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理单元的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。以上所述仅为本发明的可选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。Those of ordinary skill in the art will appreciate that all or some of the steps, systems, and functional blocks/units of the methods disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical units; for example, one physical component may have multiple functions, or one function or step may be composed of several physical The components work together. Some or all of the components may be implemented as software executed by a processor, such as a digital signal processor or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on a computer readable medium, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As is well known to those of ordinary skill in the art, the term computer storage medium includes volatile and nonvolatile, implemented in any method or technology for storing information, such as computer readable instructions, data structures, program modules, or other data. , removable and non-removable media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridge, magnetic tape, magnetic disk storage or other magnetic storage device, or may Any other medium used to store the desired information and that can be accessed by the computer. Moreover, it is well known to those skilled in the art that communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and can include any information delivery media. The above description is only an alternative embodiment of the present invention, and is not intended to limit the present invention, and the present invention may be modified and changed by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.

Claims (10)

  1. 一种升级包的生成方法,包括:A method for generating an upgrade package, including:
    判断根目录下是否存在签名目标文件;Determine whether a signature object file exists in the root directory;
    在存在所述签名目标文件时,解压所述签名目标文件,删除其中的镜像IMAGES目录,并修改待升级的文件内容;When the signature object file exists, decompress the signature object file, delete the mirror IMAGES directory, and modify the file content to be upgraded;
    使用指定脚本重新生成系统镜像,并生成升级包。Regenerate the system image with the specified script and generate an upgrade package.
  2. 根据权利要求1所述的方法,所述方法还包括:The method of claim 1 further comprising:
    在根目录下不存在所述签名目标文件时,把系统镜像转换为ext4格式,并通过system.map查找待修改文件的绝对地址;When the signature object file does not exist in the root directory, the system image is converted to the ext4 format, and the absolute address of the file to be modified is searched through system.map;
    使用winhex工具修改系统system目录中的文件内容,生成新的系统镜像后转换为sparse格式,并生成升级包。Use the winhex tool to modify the contents of the system system directory, generate a new system image, convert to the sparse format, and generate an upgrade package.
  3. 根据权利要求1所述的方法,其中,修改待升级的文件内容包括以下至少之一:The method of claim 1, wherein modifying the content of the file to be upgrade comprises at least one of the following:
    修改SYSTEM文件;Modify the SYSTEM file;
    修改build.prop文件;Modify the build.prop file;
    修改SYSTEM文件的外部版本号信息;Modify the external version number information of the SYSTEM file;
    修改build.prop文件的外部版本号信息。Modify the external version number information of the build.prop file.
  4. 根据权利要求1或2所述的方法,所述方法还包括:在生成升级包之后,The method according to claim 1 or 2, further comprising: after generating the upgrade package,
    在所述升级包中加入预定容量的二进制数据得到指定升级包;Adding binary data of a predetermined capacity to the upgrade package to obtain a specified upgrade package;
    使用签名脚本给所述指定升级包签名。Sign the specified upgrade package with a signature script.
  5. 根据权利要求1所述的方法,所述方法还包括:在解压所述签名目标文件之前,The method of claim 1 further comprising: prior to decompressing the signature object file,
    拷贝一份所述签名目标文件到指定存储设备,并重新命名拷贝版本的签名目标文件;Copying one copy of the signature object file to the specified storage device and renaming the copy version of the signature object file;
    将所述拷贝版本的签名目标文件确定为待解压的签名目标文件。The signature version of the signature target file is determined as the signature target file to be decompressed.
  6. 一种升级包的生成装置,包括:An apparatus for generating an upgrade package, comprising:
    判断模块,设置为判断根目录下是否存在签名目标文件;The judging module is set to determine whether a signature object file exists in the root directory;
    第一处理模块,设置为在存在所述签名目标文件时,解压所述签名目标文件,删除其中的镜像IMAGES目录,并修改待升级的文件内容;The first processing module is configured to: when the signature object file exists, decompress the signature object file, delete the mirror IMAGES directory, and modify the file content to be upgraded;
    第一生成模块,设置为使用指定脚本重新生成系统镜像,并生成升级包。The first generation module is configured to regenerate the system image using the specified script and generate an upgrade package.
  7. 根据权利要求6所述的装置,所述装置还包括:The apparatus of claim 6 further comprising:
    第二处理模块,设置为在根目录下不存在所述签名目标文件时,把系统镜像转换为ext4格式,并通过system.map查找待修改文件的绝对地址;The second processing module is configured to convert the system image into the ext4 format when the signature object file does not exist in the root directory, and find the absolute address of the file to be modified through the system.map;
    第二生成模块,设置为使用winhex工具修改系统system目录中的文件内容,生成新的系统镜像后转换为sparse格式,并生成升级包。The second generation module is configured to modify the file content in the system system directory by using the winhex tool, generate a new system image, convert to the sparse format, and generate an upgrade package.
  8. 根据权利要求6或7所述的装置,所述装置还包括:The device according to claim 6 or 7, further comprising:
    添加模块,设置为在生成升级包之后,在所述升级包中加入预定容量的二进制数据得到指定升级包;Adding a module, and setting, after generating the upgrade package, adding binary data of a predetermined capacity to the upgrade package to obtain a specified upgrade package;
    签名模块,设置为使用签名脚本给所述指定升级包签名。A signature module configured to sign the specified upgrade package using a signature script.
  9. 一种存储介质,所述存储介质包括存储的程序,其中,所述程序运行时执行权利要求1至5中任一项所述的方法。A storage medium, the storage medium comprising a stored program, wherein the program is executed to perform the method of any one of claims 1 to 5.
  10. 一种处理器,所述处理器设置为运行程序,其中,所述程序运行时执行权利要求1至5中任一项所述的方法。A processor, the processor being arranged to run a program, wherein the program is executed to perform the method of any one of claims 1 to 5.
PCT/CN2018/087148 2017-09-04 2018-05-16 Method and device for generating upgrade package WO2019041891A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710787814.8A CN109426515A (en) 2017-09-04 2017-09-04 The generation method and device of upgrade package
CN201710787814.8 2017-09-04

Publications (1)

Publication Number Publication Date
WO2019041891A1 true WO2019041891A1 (en) 2019-03-07

Family

ID=65513774

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/087148 WO2019041891A1 (en) 2017-09-04 2018-05-16 Method and device for generating upgrade package

Country Status (2)

Country Link
CN (1) CN109426515A (en)
WO (1) WO2019041891A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930412B (en) * 2019-05-13 2024-11-19 阿里巴巴集团控股有限公司 Method and device for differential file generation and firmware online upgrade
CN110348178A (en) * 2019-06-27 2019-10-18 绿漫科技有限公司 The method that a kind of pair of iOS system application is signed again
CN111949303A (en) * 2020-07-06 2020-11-17 深圳市华曦达科技股份有限公司 Upgrade package processing method and device, electronic equipment and storage medium
CN113821222B (en) * 2021-07-27 2025-07-04 深圳市广通远驰科技有限公司 A method and device for generating original OTA package
CN113609476B (en) * 2021-07-28 2024-08-23 南京慧尔视智能科技有限公司 Remote upgrading method and upgrading system for radar firmware
CN114637523B (en) * 2022-02-14 2024-10-18 北京鸿合爱学教育科技有限公司 Firmware upgrade file processing method, device, server and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123588A (en) * 2013-02-05 2013-05-29 东莞宇龙通信科技有限公司 A method and system for obtaining differential upgrade patches
CN105335182A (en) * 2014-08-06 2016-02-17 中兴通讯股份有限公司 Method and device for realizing making of upgrade patches
CN105373410A (en) * 2015-12-22 2016-03-02 京信通信技术(广州)有限公司 Differential upgrading method and device for base station software
CN106648766A (en) * 2016-12-07 2017-05-10 京信通信系统(中国)有限公司 Patch update package generation and differential upgrade method based on folder and device thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9778926B2 (en) * 2014-10-30 2017-10-03 Google Inc. Minimizing image copying during partition updates
US10346150B2 (en) * 2015-10-21 2019-07-09 Oracle International Corporation Computerized system and method for patching an application by separating executables and working data using different images
CN105511911B (en) * 2015-11-27 2019-02-12 青岛海信移动通信技术股份有限公司 The generation method and device of system firmware upgrade package

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103123588A (en) * 2013-02-05 2013-05-29 东莞宇龙通信科技有限公司 A method and system for obtaining differential upgrade patches
CN105335182A (en) * 2014-08-06 2016-02-17 中兴通讯股份有限公司 Method and device for realizing making of upgrade patches
CN105373410A (en) * 2015-12-22 2016-03-02 京信通信技术(广州)有限公司 Differential upgrading method and device for base station software
CN106648766A (en) * 2016-12-07 2017-05-10 京信通信系统(中国)有限公司 Patch update package generation and differential upgrade method based on folder and device thereof

Also Published As

Publication number Publication date
CN109426515A (en) 2019-03-05

Similar Documents

Publication Publication Date Title
WO2019041891A1 (en) Method and device for generating upgrade package
CN110058873B (en) Application page updating method, device, equipment and storage medium
CN106775723B (en) Android platform-based system firmware customization method and Android device
CN103810257B (en) A kind of method, apparatus and equipment of upgrading software database
US10489591B2 (en) Detection system and method thereof
CN105335181A (en) OTA upgrade realization method and terminal
CN107506219A (en) A kind of general version upgrade method based on android system
US20140372998A1 (en) App package deployment
CN108536745B (en) Shell-based data table extraction method, terminal, equipment and storage medium
CN105867947A (en) Data processing method and device after upgrades of preset applications
CN108563440B (en) List controller code automatic adding method, device and readable storage medium
CN106796522A (en) System and method for updating source code file
CN104991793A (en) Method, device and system used for application program subpackage
CN105068834B (en) Method for upgrading system and device
CN105205142B (en) Preserve method, device and the mobile terminal of journal file
CN108415714A (en) The method for upgrading system and device of mobile terminal
CN110162429A (en) System repair, server and storage medium
CN107797820A (en) Method and apparatus for generating patch
CN111273942A (en) Code generation method, storage medium, electronic device and system
CN105404536A (en) Terminal software upgrade method and terminal software upgrade apparatus
CN110209420A (en) A kind of method and device updating bootstrap loader
CN104461621A (en) Attribute information updating method and device
CN103995696A (en) Custom-built system and method of software package of mobile terminal
CN108694049B (en) Method and equipment for updating software
CN111949303A (en) Upgrade package processing method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18850937

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 08.09.2020)

122 Ep: pct application non-entry in european phase

Ref document number: 18850937

Country of ref document: EP

Kind code of ref document: A1