WO2013178048A1 - 生成无线固件升级包的方法和装置 - Google Patents

生成无线固件升级包的方法和装置 Download PDF

Info

Publication number
WO2013178048A1
WO2013178048A1 PCT/CN2013/076303 CN2013076303W WO2013178048A1 WO 2013178048 A1 WO2013178048 A1 WO 2013178048A1 CN 2013076303 W CN2013076303 W CN 2013076303W WO 2013178048 A1 WO2013178048 A1 WO 2013178048A1
Authority
WO
WIPO (PCT)
Prior art keywords
software
file
files
upgrade package
version
Prior art date
Application number
PCT/CN2013/076303
Other languages
English (en)
French (fr)
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 华为终端有限公司
Priority to EP13797649.4A priority Critical patent/EP2857965B1/en
Publication of WO2013178048A1 publication Critical patent/WO2013178048A1/zh
Priority to US14/554,431 priority patent/US20150082294A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring

Definitions

  • the present invention relates to the field of wireless communications, and more particularly to a method and apparatus for generating a firmware (English for Firmware Over The Air, abbreviated as FOTA) upgrade package.
  • FOTA Firmware Over The Air
  • the F0TA Online Upgrade (English Update Online) feature is used to wirelessly upgrade a mobile terminal from an older version to a newer version.
  • the traditional production method creates a F0TA upgrade package for the difference between the old version and the new version, so that users can download it from the Internet and use it for mobile terminal upgrade.
  • 2-3 versions are maintained for one mobile terminal, and overseas general-purpose mobile terminals have more stages in each country.
  • Embodiments of the present invention provide a method and apparatus for generating a F0TA upgrade package, a software upgrade method, and a mobile terminal, which can reduce operating costs.
  • a method for generating a wireless firmware (FOTA) upgrade package including: generating a transition software according to comparing a file name and a binary format of a file in software of two of the at least two upgraded versions to be upgraded; Generate a FOTA upgrade based on the file name of the comparison transition software and the final version software and the binary format of the file.
  • FOTA wireless firmware
  • an apparatus for generating a wireless firmware (FOTA) upgrade package including: a first generating unit, configured to compare file names and files in software of two of the at least two upgraded versions to be upgraded Binary format, generating a transition software; a second generating unit, configured to generate a FOTA upgrade package according to comparing a file format of the transition software and the final version software generated by the first generating unit and a binary format of the file, where the FOTA upgrade package is used Software that supports two upgrades at the same time is upgraded online to the final version software via a wireless network.
  • FOTA wireless firmware
  • a software upgrade method including: obtaining a wireless firmware (FOTA) upgrade package generated by the above method; and upgrading the software system of the mobile terminal by using the F0TA upgrade package.
  • FOTA wireless firmware
  • a mobile terminal including an obtaining unit and an upgrading unit: the obtaining unit is configured to obtain a wireless firmware (FOTA) upgrade package generated according to the foregoing method; and the upgrading unit is configured to upgrade the software system of the mobile terminal by using the FOTA upgrade package.
  • FOTA wireless firmware
  • the foregoing technical solution provides a method and a device for generating a FOTA upgrade package, so that a software version provider can use the same FOTA upgrade package for upgrading multiple old versions, and a F0TA upgrade package is provided for meeting multiple old versions of different mobile users. Reduce the cost of provider development and maintenance of software versions while upgrading to the latest version requirements.
  • FIG. 1 is a schematic block diagram of a method for generating a FOTA upgrade package according to an embodiment of the present invention.
  • FIG. 2 is a schematic block diagram of a method of generating a FOTA upgrade package according to another embodiment of the present invention.
  • FIG. 3A is a schematic block diagram of an apparatus for generating a FOTA upgrade package according to an embodiment of the present invention.
  • FIG. 3B is a schematic block diagram of an apparatus for generating a FOTA upgrade package according to another embodiment of the present invention.
  • FIG. 4 is a schematic flow chart of a software upgrade method according to an embodiment of the present invention.
  • FIG. 5 is a schematic flow chart of a software upgrade method according to another embodiment of the present invention.
  • 6A and 6B are schematic block diagrams of a mobile terminal according to an embodiment of the present invention. detailed description
  • the embodiment of the invention provides a method for generating a F0TA upgrade package, so that the provider of the software version can use the same F0TA upgrade package to upgrade multiple old versions.
  • FIG. 1 is a schematic block diagram of a method 10 of generating a FOTA upgrade package in accordance with an embodiment of the present invention.
  • An embodiment of the present invention provides a method for generating a FOTA upgrade package, so that a provider of a software version can use the same FOTA upgrade package to upgrade multiple old versions, and upgrade multiple old versions of different mobile users through one F0TA upgrade package. Reduce the cost of provider development and maintenance of software versions while meeting the latest version requirements.
  • the generating the transition software according to the file name and the binary format of the file in the software of the two upgraded versions of the at least two to be upgraded versions include: comparing two softwares to be upgraded; Files having the same binary format are stored as a common file of the transition software; files having different file names, or the same file name and different binary formats are stored as the difference file of the transition software; according to the common file of the transition software The difference software with the transition software generates the transition software.
  • storing the file with different file names, or the same file name and different binary formats as the difference file of the transition software specifically includes: when the final version software includes the software with the two to be upgraded versions.
  • the file name is the same but the binary format Different files are excluded from the difference file of the transition software; when the final version software does not include the same name file of the file with the same file name but different binary format in the software of the 2 to be upgraded versions, And storing the files with the same file name but different binary formats in the difference file of the transition software; when the two softwares to be upgraded have files that are not included in each other, and the files that are not included in the file
  • the file is excluded from the difference file of the transition software; when the software of the two versions to be upgraded has files that are not included in the software, and When a file of the same name of a file not included in the other is not included in the final version software, the file is retained in the
  • the generating the FOTA upgrade package according to comparing the file name of the transition software and the final version software with the binary format of the file specifically includes: comparing the transition software and the final version software; and including the final version software
  • the file not included in the transition software is stored as an overlay file of the FOTA upgrade package; the difference portion of the file with the same file name and different binary formats is stored as a difference file of the FOTA upgrade package; according to the FOTA upgrade package
  • the overlay file and the differential file generate the upgrade package.
  • the generating the FOTA upgrade package according to comparing the file name of the transition software and the final version software with the binary format of the file further includes: storing the security data card upgrade package of the final version software as an upgrade of the F0TA upgrade package. file.
  • the generating the transition software according to the overlay file and the differential file of the FOTA upgrade package specifically includes: generating the FOTA upgrade package according to the upgrade file, the overlay file, and the difference file of the FOTA upgrade package.
  • the generating the FOTA upgrade package according to the file name and the binary format of the file of the transition software and the final version software further includes: deleting, as the to-be-deleted file, the file included in the transition software and not included in the final version software
  • the file is written in the upgrade script of the F0TA upgrade package, and is used to delete the file to be deleted by using a script command during the upgrade process.
  • the transition software generated by comparing the first version software and the second version software is the first transition software, according to the comparison.
  • the file name of the first transition software and the final version software and the binary format of the file, the generated FOTA upgrade package is a first FOTA upgrade package, and the first FOTA upgrade package is used to support two softwares to be upgraded at the same time.
  • the first version software and the second version software are upgraded online to the final version software via a wireless network.
  • the K+2 version software when the software includes two or more versions to be upgraded, the K+2 version software, where K is a positive integer, Generating a K+1 transition software, wherein K is a positive integer according to a comparison between the K+2 version software and the binary format of the file name and file in the Kth transition software, wherein the K+1 transition software is compared according to the comparison And the file name of the final version software and the binary format of the file, generate a K+1 F0TA upgrade package, and the K+1 F0TA upgrade package is used to simultaneously support K+2 software to be upgraded and upgrade online through the wireless network.
  • the final version of the software when the software includes two or more versions to be upgraded, the K+2 version software, where K is a positive integer.
  • FIG. 2 is a schematic block diagram of a method 20 of generating a FOTA upgrade package in accordance with another embodiment of the present invention.
  • the embodiment of the present invention takes two old versions to be upgraded as an example.
  • the first version of the software is called the al version
  • the second version is called the a2 version
  • the al version and the a2 version are used to generate the transition software, which is called the bl version in the context
  • the final version of the software is called the cl version
  • the version software is the version that was eventually upgraded to the al version and the a2 version.
  • the al and a2 versions include the same file name as the binary file.
  • the al and a2 versions include the same file name, but the binary file is different.
  • the al or a2 version includes files that are not included in another version.
  • This file refers to files that are not included in the two versions.
  • the file name of the file appears in only one version.
  • the new file added by cl exists in the form of copy overwrite, and the file is deleted.
  • the F0TA upgrade package generated according to the bl version is overwritten or deleted.
  • the above-mentioned files may be the files included in the al version and the a2 version, the files included in the al version more than the a2 version, or the files included in the a2 version than the al version. Files not included in the al and a2 versions.
  • transition software Generate transition software based on the common files of the transition software and the difference files of the transition software.
  • the bl and cl versions include files with the same file name.
  • cl includes files not included in the bl version.
  • bl includes files not included in the cl version.
  • the file included in the cl and not included in the bl is stored in the root directory of the F0TA upgrade package as the overlay file of the F0TA upgrade package according to the directory structure of the file in the mobile terminal.
  • the files included in the cl and not included in the bl may be files of the same name that are not included in the a version but not included in the a2 version, or files of the same name that are not included in the a2 version but not included in the al version, or may be
  • the file with the same name but different binary format, which is included in the a2 version can also be a file not included in the aal version and the a2 version.
  • the unnecessary files in the bl version that is, the files that do not exist in the cl version
  • the F0TA upgrade package deletes the file directly by the shell command in the script. If there is no such file in the bl version, it will not affect. This can further reduce the size of the generated F0TA upgrade package and improve the efficiency of wireless upgrade.
  • the F0TA upgrade package also includes the secure data card in the cl version (in English)
  • SD card upgrade package can be stored in the root directory of the FOTA upgrade package.
  • the same F0TA upgrade package can be used to upgrade multiple old versions.
  • the size of the F0TA upgrade package is reduced as much as possible by the method for generating the F0TA upgrade package, so that the mobile user can obtain the F0TA upgrade package wirelessly.
  • step 21 in the above method is repeatedly performed. Up to 24, the bl version and the a3 version are merged into the transition software b2 version, the b2 version and the a4 version are merged into the new transition software version b3 and so on. Then, perform steps 25 to 28 in the above method to generate a F0TA upgrade package based on the last transition software and the final version software cl version.
  • the generated FOTA upgrade package can meet the upgrade requirements of different versions of the mobile terminal, thereby saving the labor cost of the software version provider and saving some hardware costs for storage.
  • the F0TA upgrade package is generated according to the cl version and the c2 version by performing steps 25 to 28 in the above method.
  • FIGS. 3A and 3B are schematic block diagrams of an apparatus 30 for generating a FOTA upgrade package in accordance with an embodiment of the present invention.
  • the device 30 includes a first generating unit 31 and a second generating unit 32.
  • the first generating unit 31 is configured to generate the transition software according to comparing the file name and the binary format of the file in the software of the two to-be-upgraded versions of the at least two to-be-upgraded versions.
  • the second generating unit 32 is configured to generate a FOTA upgrade package according to comparing a file format of the transition software and the final version software generated by the first generating unit, and a binary format of the file, where the FOTA upgrade package is used to simultaneously support the two to-be-supported
  • the upgraded version of the software is upgraded online to the final version of the software over a wireless network.
  • An embodiment of the present invention provides an apparatus for generating a FOTA upgrade package, so that a provider of a software version can use the same FOTA upgrade package to upgrade multiple old versions, and upgrade multiple old versions of different mobile users through one F0TA upgrade package. Reduce the cost of provider development and maintenance of software versions while meeting the latest version requirements.
  • the first generating unit 31 of the device 30 specifically includes a first comparing module 310, a first storage module 311, and a first generating module 312.
  • the first comparison module is used to compare the software of the two upgraded versions.
  • the first storage module is configured to store a file whose file name and the binary format of the file are the same as a common file of the transition software; and to store the file with different file names, or the same file name and different binary formats as the file. The difference between the transition software.
  • the first generation module is configured to generate the transition software according to the common file of the transition software stored by the first storage module and the difference file of the transition software.
  • the first storage module is specifically configured to: when the final version software includes a file with the same name as the file with the same file name but different binary format in the software of the two to be upgraded versions, Files with the same file name but different binary formats are excluded from the difference file of the transition software; when the final version software does not include the same file name as the software in the two versions to be upgraded but the binary format is different When the file with the same name of the file is the same, the files with the same file name but different binary formats are retained in the difference file of the transition software; when the two softwares to be upgraded have files that are not included in each other, When the file with the same name of the file not included in the mutually included file is included in the final version software, the file is excluded from the difference file of the transition software; when the software of the two versions to be upgraded has mutual If the file of the same name that is not included in the file is not included in the final version software, the file is retained. The difference between the transition software files.
  • the second generating unit 32 of the device 30 specifically includes a second comparing module 320, a second storage module 321, and a second generating module 322.
  • the second comparison module is for comparing the transition software and the final version software.
  • the second storage module is configured to store, in the final version software, a file that is not included in the transition software generated by the second comparison module, as an overlay file of the FOTA upgrade package, and also to use the same file name and The difference portion of the file in which the binary format is different is stored as the difference file of the FOTA upgrade package.
  • the second generation module is configured to generate the firmware package according to the overlay file and the difference file of the FOTA upgrade package stored by the second storage module.
  • the second storage module further stores the security data card upgrade package of the final version software as an upgrade file of the FOTA upgrade package.
  • the second generating module is specifically configured to generate the FOTA upgrade package according to the upgrade file, the overlay file, and the difference file of the FOTA upgrade package stored by the second storage module.
  • the first generating module is further configured to write, in the upgrade script, the file that is included in the transition software and that is not included in the final version software, into the upgrade script of the FOTA upgrade package.
  • the file to be deleted is deleted by a script command during the process.
  • the apparatus when the software of the two to be upgraded versions is the first version software and the second version software, the apparatus is specifically configured to: the first generating unit is specifically configured to compare the first version software and the second The transition software generated by the version software is the first transition software, and the second generating unit generates the FOTA upgrade package according to comparing the file name of the first transition software and the final version software generated by the first generating unit with the binary format of the file.
  • a first FOTA upgrade package where the first FOTA upgrade package is used to simultaneously support two softwares to be upgraded, and the first version software and the second version software are upgraded online to the final version software through a wireless network.
  • the device is further configured to: when the software includes two or more versions to be upgraded, and the K+2 version software, where K is a positive integer, the first generating unit is specifically configured to compare the first a K+2 version software and a binary format of the file name and the file in the Kth transition software, generating K+1 transition software, where K is a positive integer; the second generating unit is specifically configured to compare the first Generating the K+1 transition software and the binary version of the file of the final version software generated by the unit, and generating a K+1 F0TA upgrade package, wherein the K+1 F0TA upgrade package is used to simultaneously support K+2 to be upgraded.
  • the version of the software is upgraded online via the wireless network to the final version of the software.
  • the apparatus 30 implements the above methods 10 and/or 20, and the details are not described herein for brevity.
  • An embodiment of the present invention provides an apparatus for generating a FOTA upgrade package, so that a provider of a software version can use the same FOTA upgrade package to upgrade multiple old versions, and upgrade multiple old versions of different mobile users through one F0TA upgrade package. Reduce the cost of provider development and maintenance of software versions while meeting the latest version requirements.
  • FIG. 4 shows a schematic flow chart of the software upgrade method 40 according to an embodiment of the present invention. Method 40 includes the following.
  • the embodiment of the invention provides a software upgrade method, which can make multiple old versions of mobile users pass one
  • the F0TA upgrade package is upgraded to the latest version.
  • the reduced F0TA upgrade package size makes it easy for mobile users to obtain the F0TA upgrade package.
  • FIG. 5 is a schematic flow chart of a software upgrade method 50 in accordance with another embodiment of the present invention.
  • Method 50 includes the following.
  • the mobile terminal obtains the FOTA upgrade package generated in the foregoing embodiment by using a wireless manner.
  • the acquisition method is the same as the existing technology.
  • a method of generating a FOTA upgrade package is described, for example, with reference to the embodiment of FIG.
  • the generated FOTA upgrade package includes an upgrade file, an overlay file, and a differential file.
  • the security data card upgrade package of the final version software is stored as an upgrade file of the FOTA upgrade package.
  • the file that is included in the final version software and not included in the transition software is stored as an overlay file of the FOTA upgrade package. These files are upgraded directly to the original version. These files can be stored in the upgrade package as a complete file.
  • the difference file of the F0TA upgrade package is merged with the file of the same name of the software system and stored as the file with the same name of the software system.
  • the final version included in the transition software is included
  • the files not included in the software are written as the files to be deleted in the upgrade script of the FOTA upgrade package.
  • the embodiment of the present invention provides a software upgrade method, which can enable a plurality of old versions of a mobile user to be upgraded to the latest version by using the FOTA upgrade package generated by another embodiment of the present invention, and the mobile device can be obtained by the simplified FOTA upgrade package size. F0TA upgrade package.
  • FIG. 6A is a schematic block diagram of a mobile terminal 60 including an acquisition unit 61 and an upgrade unit 62, in accordance with an embodiment of the present invention.
  • the obtaining unit 61 is configured to obtain a wireless firmware FOTA upgrade package generated by the method for generating a F0TA upgrade package according to an embodiment of the present invention
  • the upgrading unit 62 is configured to upgrade the software system of the mobile terminal using the FOTA upgrade package.
  • the embodiment of the present invention provides a software upgrade apparatus, which can upgrade a plurality of old versions of a mobile user to the latest version by using the FOTA upgrade package generated by another embodiment of the present invention, and facilitate the mobile user to obtain the FOTA upgrade package.
  • the upgrading unit 62 specifically includes: a first storage module 621, a second storage module 622, and a third storage module 623.
  • the first storage module 621 stores the upgrade file of the FOTA upgrade package as a file with the same name of the software system; and the second storage module 622 And storing the coverage file of the FOTA upgrade package as a file of the software system; the third storage module 623 combines the difference file of the FOTA upgrade package with a file of the same name of the software system, and stores the file as the software system. The same name file.
  • the upgrade unit also includes a delete module 624.
  • the deletion module 624 deletes the file to be deleted written in the upgrade script of the F0TA upgrade package by using a script command in the software system.
  • the mobile terminal 60 implements the methods 40 and/or 50, which are omitted here for brevity.
  • the mobile terminal may also be referred to as a user equipment (UE), a mobile user equipment, etc., and may communicate with one or more core networks via a radio access network (eg, RAN, Radio Access Network).
  • the user equipment may be a mobile terminal, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal, for example, a mobile device that can be portable, pocket, handheld, computer built, or in-vehicle,
  • the wireless access network exchanges languages and/or data.
  • the embodiment of the present invention provides a software upgrade apparatus, which can upgrade a plurality of old versions of a mobile user to a latest version by using a FOTA upgrade package generated by another embodiment of the present invention, and facilitate the mobile user to obtain the reduced size by using a reduced FOTA upgrade package size.
  • F0TA upgrade package F0TA upgrade package.
  • the disclosed systems, devices, and methods may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, i.e., may be located in one place, or may be distributed over multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the functions may be stored in a computer readable storage medium if implemented in the form of a software functional unit and sold or used as a standalone product.
  • the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including A number of instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the methods of the various embodiments of the present invention Step by step.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and the like, which can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供了一种生成FOTA升级包的方法和装置,以及软件升级方法和移动终端。生成FOTA升级包的方法包括:根据比较至少2个待升级版本中的2个待升级版本的软件中的文件名和文件的二进制格式,生成过渡软件;根据比较过渡软件和最终版本软件的文件名和文件的二进制格式,生成FOTA升级包。上述技术方案使得软件版本的提供商可以使用同一个FOTA升级包用于升级多个旧版本,在满足不同移动用户的多个旧版本通过一个FOTA升级包升级到最新版本要求的同时,降低软件版本的提供商开发和维护的成本。

Description

生成无线固件升级包的方法和装置 本申请要求于 2012年 05月 28日提交中国专利局、 申请号为 201210169141. 7专利 申请名称为 "生成无线固件升级包的方法和装置"的中国专利申请的优先权, 其全部内 容通过引用结合在本申请中。
技术领域
本发明涉及无线通信领域,更具体地,涉及生成无线固件(英文为 Firmware Over The Air, 简称为 FOTA) 升级包的方法和装置。 背景技术
随着科技的发展, 出现了日新月异的移动终端。 为了满足人们对新鲜事物的追求, 移动终端在不停地扩展功能。 由于移动终端的软件版本过于陈旧, 会影响到新功能的使 用, 因此在线升级功能随之也越来越普及。 F0TA在线升级 (英文为 Update Online) 功 能用于将移动终端的通过无线方式从一个较旧的版本升级到一个新的版本。传统的制作 方式通过针对旧版本和新版本之间的差异制作出一个 F0TA升级包, 使得用户可以从网 上下载并用于移动终端升级。 通常针对一个移动终端会维护 2-3个版本, 而海外通用的 移动终端在各个国家会有更多阶段的版本。 现有技术中, 如果需要满足使用不同软件版 本的移动终端从一个旧版本升级为最新的版本, 软件版本的提供商例如移动终端制造商 或运营商需要针对每一个旧版本生成一个 F0TA升级包, 增加了软件开发的时间和维护 的成本, 从而大大增加了运营成本。 发明内容
本发明实施例提供一种生成 F0TA升级包的方法和装置以及软件升级方法和移动终 端, 能够降低运营成本。
一方面, 提供了一种生成无线固件 (F0TA) 升级包的方法, 包括: 根据比较至少 2 个待升级版本中的 2个待升级版本的软件中的文件名和文件的二进制格式, 生成过渡软 件; 根据比较过渡软件和最终版本软件的文件名和文件的二进制格式, 生成 F0TA升级 包
另一方面, 提供了一种生成无线固件(F0TA)升级包的装置, 包括: 第一生成单元, 用于根据比较至少 2个待升级版本中的 2个待升级版本的软件中的文件名和文件的二进 制格式, 生成过渡软件; 第二生成单元, 用于根据比较所述第一生成单元生成的过渡软 件和最终版本软件的文件名和文件的二进制格式, 生成 F0TA升级包, 所述 F0TA升级包 用于同时支持 2个待升级版本的软件通过无线网络在线升级为所述最终版本软件。
另一方面,提供了一种软件升级方法,包括:获取上述方法所生成的无线固件 (F0TA) 升级包; 使用 F0TA升级包升级移动终端的软件系统。
另一方面, 提供了一种移动终端, 包括获取单元和升级单元: 获取单元用于获取按 照上述方法生成的无线固件 (F0TA) 升级包; 升级单元用于使用 F0TA升级包升级移动 终端的软件系统。
上述技术方案提供了一种生成 F0TA升级包的方法和装置, 使得软件版本的提供商 可以使用同一个 F0TA升级包用于升级多个旧版本, 在满足不同移动用户的多个旧版本 通过一个 F0TA升级包升级到最新版本要求的同时, 降低软件版本的提供商开发和维护 的成本。 附图说明
为了更清楚地说明本发明实施例的技术方案, 下面将对本发明实施例中所需要使用 的附图作简单地介绍, 显而易见地, 下面所描述的附图仅仅是本发明的一些实施例, 对 于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以根据这些附图获得 其他的附图。
图 1是本发明实施例的生成 F0TA升级包的方法的示意框图。
图 2是本发明另一实施例的生成 F0TA升级包的方法的示意框图。
图 3A是本发明实施例的生成 F0TA升级包的装置的示意框图。
图 3B是本发明另一实施例的生成 F0TA升级包的装置的示意框图。
图 4是根据本发明实施例的软件升级方法的示意流程图。
图 5是根据本发明另一实施例的软件升级方法的示意流程图。
图 6A和图 6B是根据本发明实施例的一种移动终端的示意框图。 具体实施方式
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整 地描述, 显然, 所描述的实施例是本发明的一部分实施例, 而不是全部实施例。 基于本 发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其 他实施例, 都应属于本发明保护的范围。
本文中术语 "和 /或" , 仅仅是一种描述关联对象的关联关系, 表示可以存在三种 关系, 例如, A和 /或 B, 可以表示: 单独存在 A, 同时存在 A和 B, 单独存在 B这三种 情况。 另外, 本文中字符 "/", 一般表示前后关联对象是一种 "或" 的关系。
本发明实施例提供了一种生成 F0TA升级包的方法, 使得软件版本的提供商可以使 用同一个 F0TA升级包用于升级多个旧版本。
图 1是本发明实施例的生成 F0TA升级包的方法 10的示意框图。
11,根据比较至少 2个待升级版本中的 2个待升级版本的软件中的文件名和文件的 二进制格式, 生成过渡软件。
12, 根据比较过渡软件和最终版本软件的文件名和文件的二进制格式, 生成 F0TA 升级包。
本发明实施例提供了一种生成 F0TA升级包的方法, 使得软件版本的提供商可以使 用同一个 F0TA升级包用于升级多个旧版本, 在满足不同移动用户的多个旧版本通过一 个 F0TA升级包升级到最新版本要求的同时, 降低软件版本的提供商开发和维护的成本。
可选的,根据比较至少 2个待升级版本中的 2个待升级版本的软件中的文件名和文 件的二进制格式, 生成过渡软件具体包括: 比较 2个待升级版本的软件; 将文件名且文 件的二进制格式均相同的文件存储为所述过渡软件的共同文件; 将文件名不同、 或文件 名相同且二进制格式不同的文件存储为所述过渡软件的区别文件; 根据所述过渡软件的 共同文件和所述过渡软件的区别文件生成所述过渡软件。
可选的, 将文件名不同、 或文件名相同且二进制格式不同的文件存储为所述过渡软 件的区别文件具体包括: 当所述最终版本软件包括与所述 2个待升级版本的软件中所述 文件名相同但二进制格式不同的文件的同名文件时, 则将所述文件名相同但二进制格式 不同的文件排除在所述过渡软件的区别文件之外; 当所述最终版本软件不包括与所述 2 个待升级版本的软件中所述文件名相同但二进制格式不同的文件的同名文件时, 则将所 述文件名相同但二进制格式不同的文件保留在所述过渡软件的区别文件中; 当所述 2个 待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同名文件包括在所 述最终版本软件中时, 则将所述文件排除在所述过渡软件的区别文件之外; 当所述 2个 待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同名文件不包括在 所述最终版本软件中时, 则将所述文件保留在所述过渡软件的区别文件中。
可选的, 根据比较所述过渡软件和最终版本软件的文件名和文件的二进制格式, 生 成 F0TA升级包具体包括: 比较所述过渡软件和最终版本软件; 将所述最终版本软件中 包括的且所述过渡软件中不包括的文件存储为所述 F0TA升级包的覆盖文件; 将文件名 相同且二进制格式不同的文件的差异部分存储为所述 F0TA升级包的差分文件; 根据所 述 F0TA升级包的覆盖文件和差分文件生成所述升级软件包。
可选的, 根据比较所述过渡软件和最终版本软件的文件名和文件的二进制格式, 生 成 F0TA升级包还包括: 将所述最终版本软件的安全数据卡升级包存储为所述 F0TA升级 包的升级文件。 对应的, 所述根据所述 F0TA升级包的覆盖文件和差分文件生成所述过 渡软件具体包括:根据所述 F0TA升级包的升级文件、覆盖文件和差分文件生成所述 F0TA 升级包。
可选的, 根据比较所述过渡软件和最终版本软件的文件名和文件的二进制格式, 生 成 F0TA升级包还包括: 将所述过渡软件中包括的且所述最终版本软件不包括的文件作 为待删除文件写入所述 F0TA升级包的升级脚本中, 用于在升级的过程中通过脚本命令 删除所述待删除文件。
可选的, 当所述 2个待升级版本的软件分别为第一版本软件和第二版本软件时, 根 据比较第一版本软件和第二版本软件生成的过渡软件为第一过渡软件,根据比较所述第 一过渡软件和最终版本软件的文件名和文件的二进制格式, 生成的 F0TA升级包为第一 F0TA升级包, 所述第一 F0TA升级包用于同时支持 2个待升级版本的软件, 所述第一版 本软件和所述第二版本软件, 通过无线网络在线升级为所述最终版本软件。
可选的, 当包括 2个以上待升级版本的软件,第 K+2版本软件,其中 K为正整数时, 根据比较所述第 K+2版本软件和所述第 K过渡软件中的文件名和文件的二进制格式, 生 成第 K+1过渡软件, 其中 K为正整数; 根据比较所述第 K+1过渡软件和最终版本软件的 文件名和文件的二进制格式, 生成第 K+1 F0TA升级包, 所述第 K+1 F0TA升级包用于同 时支持 K+2个待升级版本的软件通过无线网络在线升级为所述最终版本软件。
图 2是本发明另一实施例的生成 F0TA升级包的方法 20的示意框图。
21, 比较 2个待升级版本的软件。
如果一个 F0TA升级包用于升级多个旧版本,那么这几个旧版本之间肯定会有区别, 这些区别包括下述 3种情况。 接下来, 为简化说明, 本发明实施例以 2个待升级的旧版 本为例。 第一版本软件上下文中称为 al版本, 第二版本软件上下文中称为 a2版本; 基 于 al版本和 a2版本生成过渡软件, 上下文中称为 bl版本; 最终版本软件上下文中称 为 cl版本, 最终版本软件是用于将 al版本和 a2版本最终升级到的版本。
1 ) al和 a2版本中包括文件名一样, 二进制文件相同的文件。
2) al和 a2版本中包括文件名一样, 但是二进制文件不同
3) al或 a2版中包括另一版本没有的文件,该文件是指两个版本中互不包括的文件, 该文件的文件名只在一个版本中出现。
22, 将文件名且文件的二进制格式均相同的文件存储为过渡软件的共同文件。 针对情况 1), 将 2个旧版本中相同的文件保留在 bl版本中。
由此使 bl版本不破坏不同旧版本中相同的文件结构。这样根据 bl版本生成的 F0TA 升级包, 也能保证这部分文件的正常升级。
23, 将文件名不同、 或文件名相同且二进制格式不同的文件存储为过渡软件的区别 文件。
针对情况 2),根据 cl版本中的情况分别处理。如果 cl版本也包括同名的上述文件, 那么在 bl版本中将此文件删除, 使得 F0TA升级包制作出来以后, 通过覆盖的方式, 将 此类文件升级。 如果 cl版本中没有此文件, 那么在 bl版本中留下 al或 a2版本中的同 名文件, 使得 F0TA升级包制作出来以后, 通过脚本将此文件删除, 从而保证升级后的 版本一致。
升级软件版本时, cl与 bl比较后 cl新增的文件以拷贝覆盖的形式存在,删除文件 时通过脚本形式, 使根据 bl版本生成的 F0TA升级包达到覆盖或者删除该文件的目的。 针对情况 3), 同情况 2)类似处理。 当 al或 a2版中包括另一版本没有的文件, 上 述没有的文件可以是 al版本和 a2版本比较后, al版本比 a2版本多包括的文件, 或 a2 版本比 al版本多包括的文件, 即 al版本和 a2版本中互不包括的文件。 如果 cl版本中 有此文件, 那么在 bl版本中将此文件删除, 使得 F0TA升级包制作出来以后, 通过覆盖 的方式, 将此类文件升级。 如果 cl版本中没有此文件, 那么在 bl版本中包括该文件, 使得 F0TA升级包制作出来以后, 通过脚本将此文件删除, 从而保证升级后的版本一致。
24, 根据过渡软件的共同文件和过渡软件的区别文件生成过渡软件。
25, 比较过渡软件和最终版本软件。
与比较两个旧版本软件类似, 通过比较过渡软件 bl版本和最终版本软件 c l版本, 出现以下几种情况。
4) bl和 cl版本中包括文件名一样的文件。
5 ) cl中包括 bl版本中不包括的文件。
6 ) bl中包括 cl版本中不包括的文件。
26, 将最终版本软件中包括的且过渡软件中不包括的文件存储为 F0TA升级包的覆 盖文件。
针对情况 5), 将 c l中包括的且 b l中不包括的文件, 以原文件形式, 根据该文件在 移动终端中的目录结构, 存放在 F0TA升级包根目录下, 作为 F0TA升级包的覆盖文件。 cl中包括的且 bl中不包括的文件可以是与 al版本包括但 a2版本中不包括的同名文件, 也可以是与 a2版本包括但 al版本中不包括的同名文件, 也可以是与 al和 a2版本中共 同包括的同名但二进制格式不同的同名文件,还可以是 al版本和 a2版本中均不包括的 文件。
27, 将文件名相同且二进制格式不同的文件的差异部分存储为 F0TA升级包的差分 文件。
针对情况 4),将 bl和 cl版本中同名文件进行二进制比较。当同名文件的二进制格 式相同时, F0TA升级包不包括该文件。 当同名文件的二进制格式不同时, 将差异部分生 成差分文件, 存放在 F0TA升级包的补丁 (英文为 patch) 目录。 28, 根据 FOTA升级包的覆盖文件和差分文件生成 F0TA升级包。
可选的, 针对情况 6), 将 bl版本中多余文件, 也就是在 cl版本中不存在的文件, 写在升级脚本中, 在升级的过程中通过脚本命令将其删除。特别地, F0TA升级包删除文 件是通过脚本中 shell命令直接将文件删除, 如 bl版本中无此文件, 不会产生影响。 这样可以进一步缩减所生成的 F0TA升级包的大小, 提高无线升级时的效率。
此外, 同现有技术一样, F0TA升级包同样还包括 cl版本中的安全数据卡 (英文为
Secure Digital memory Card, 简称为 SD卡 )升级包。 可以将 SD卡升级包存放在 FOTA 升级包的根目录。
通过对 2个旧版本的融合, 合成一个过渡版本的软件, 再与最终版本软件对比生成 F0TA升级包, 即可以实现同一 F0TA升级包用于升级多个旧版本的目的。 此外, 通过上 述生成 F0TA升级包的方法尽可能减少 F0TA升级包的大小,便于移动用户通过无线方式 获取该 F0TA升级包。
可选地, 如果旧版本有 2个以上 , 例如还包括第三软件版本(也称为 a3版本)和 第四软件版本 (也称为 a4版本) 等等, 则通过重复执行上述方法中步骤 21至 24, 将 bl版本和 a3版本融合为过渡软件 b2版本,将 b2版本和 a4版本融合成新过渡软件版本 b3等等。 然后, 再执行上述方法中步骤 25至 28, 根据最后一个过渡软件与最终版本软 件 cl版本生成 F0TA升级包。 通过上述方法, 所生成 F0TA升级包能够满足不同版本的 移动终端的升级需求, 从而节省了软件版本的提供商的人工成本, 同时节省了部分用于 存储的硬件成本。
此外, 进一步地, 当软件版本的提供商提供了比最终版本软件 cl版本更新的版本, 例如 c2版本时, 通过执行上述方法中步骤 25至 28, 根据 cl版本和 c2版本生成 F0TA 升级包。 通过始终维护一个 F0TA升级包, 可以节省软件版本的提供商的人工成本, 同 时节省了部分用于存储的硬件成本。
图 3A和图 3B是本发明实施例的生成 F0TA升级包的装置 30的示意框图。 装置 30 包括第一生成单元 31和第二生成单元 32。
第一生成单元 31用于根据比较至少 2个待升级版本中的 2个待升级版本的软件中 的文件名和文件的二进制格式, 生成过渡软件。 第二生成单元 32用于根据比较所述第一生成单元生成的过渡软件和最终版本软件 的文件名和文件的二进制格式, 生成 F0TA升级包, 所述 F0TA升级包用于同时支持所述 2个待升级版本的软件通过无线网络在线升级为所述最终版本软件。
本发明实施例提供了一种生成 F0TA升级包的装置, 使得软件版本的提供商可以使 用同一个 F0TA升级包用于升级多个旧版本, 在满足不同移动用户的多个旧版本通过一 个 F0TA升级包升级到最新版本要求的同时, 降低软件版本的提供商开发和维护的成本。
可选的, 如图 3B所示, 装置 30的第一生成单元 31具体包括第一比较模块 310、第 一存储模块 311和第一生成模块 312。
第一比较模块用于比较 2个待升级版本的软件。
第一存储模块用于将文件名且文件的二进制格式均相同的文件存储为所述过渡软 件的共同文件; 还用于将文件名不同、 或文件名相同且二进制格式不同的文件存储为所 述过渡软件的区别文件。
第一生成模块用于根据所述第一存储模块存储的所述过渡软件的共同文件和所述 过渡软件的区别文件生成所述过渡软件。
可选的, 第一存储模块具体用于: 当所述最终版本软件包括与所述 2个待升级版本 的软件中所述文件名相同但二进制格式不同的文件的同名文件时, 则将所述文件名相同 但二进制格式不同的文件排除在所述过渡软件的区别文件之外; 当所述最终版本软件不 包括与所述 2个待升级版本的软件中所述文件名相同但二进制格式不同的文件的同名文 件时, 则将所述文件名相同但二进制格式不同的文件保留在所述过渡软件的区别文件 中; 当所述 2个待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同 名文件包括在所述最终版本软件中时, 则将所述文件排除在所述过渡软件的区别文件之 夕卜; 当所述 2个待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同 名文件不包括在所述最终版本软件中时, 则将所述文件保留在所述过渡软件的区别文件 中。
可选的, 如图 3B所示, 装置 30的第二生成单元 32具体包括第二比较模块 320、第 二存储模块 321和第二生成模块 322。
第二比较模块用于比较所述过渡软件和最终版本软件。 第二存储模块用于将所述最终版本软件中包括的且所述第二比较模块生成的过渡 软件中不包括的文件存储为所述 F0TA升级包的覆盖文件; 还用于将文件名相同且二进 制格式不同的文件的差异部分存储为所述 F0TA升级包的差分文件。
第二生成模块用于根据所述第二存储模块所存储的 F0TA升级包的覆盖文件和差分 文件生成所述固件软件包。
可选的, 第二存储模块还用将所述最终版本软件的安全数据卡升级包存储为所述 F0TA升级包的升级文件。对应的,所述第二生成模块具体用于根据所述第二存储模块所 存储的 F0TA升级包的升级文件、 覆盖文件和差分文件生成所述 F0TA升级包。
可选的,第一生成模块还用于将所述过渡软件中包括的且所述最终版本软件不包括 的文件作为待删除文件写入所述 F0TA升级包的升级脚本中, 用于在升级的过程中通过 脚本命令删除所述待删除文件。
可选的, 当所述 2个待升级版本的软件分别为第一版本软件和第二版本软件时, 所 述装置具体用于: 所述第一生成单元具体根据比较第一版本软件和第二版本软件生成的 过渡软件为第一过渡软件,所述第二生成单元根据比较所述第一生成单元生成的第一过 渡软件和最终版本软件的文件名和文件的二进制格式, 生成的 F0TA升级包为第一 F0TA 升级包, 所述第一 F0TA升级包用于同时支持 2个待升级版本的软件, 所述第一版本软 件和所述第二版本软件, 通过无线网络在线升级为所述最终版本软件。
可选的, 所述装置还用于: 当包括 2个以上待升级版本的软件, 第 K+2版本软件, 其中 K为正整数时,所述第一生成单元具体用于根据比较所述第 K+2版本软件和所述第 K过渡软件中的文件名和文件的二进制格式, 生成第 K+1过渡软件, 其中 K为正整数; 所述第二生成单元具体用于根据比较所述第一生成单元生成的第 K+1过渡软件和最终版 本软件的文件名和文件的二进制格式, 生成第 K+1 F0TA升级包, 所述第 K+1 F0TA升级 包用于同时支持 K+2个待升级版本的软件通过无线网络在线升级为所述最终版本软件。
装置 30实现了上述方法 10和 /或 20, 出于简洁, 具体细节此处不再赘述。
本发明实施例提供了一种生成 F0TA升级包的装置, 使得软件版本的提供商可以使 用同一个 F0TA升级包用于升级多个旧版本, 在满足不同移动用户的多个旧版本通过一 个 F0TA升级包升级到最新版本要求的同时, 降低软件版本的提供商开发和维护的成本。 接下来, 利用上述生成 F0TA升级包的方法和装置所生成的 F0TA升级包, 图 4示出 根据本发明实施例的软件升级方法 40的示意流程图。 方法 40包括以下内容。
41, 获取按照本发明实施例的生成 F0TA升级包的方法所生成的 F0TA升级包。
42 , 使用 F0TA升级包升级移动终端的软件系统。
本发明实施例提供了一种软件升级方法,可以使得移动用户的多个旧版本通过一个
F0TA升级包升级到最新版本, 通过精简的 F0TA升级包大小便于移动用户获取该 F0TA 升级包。
图 5是根据本发明另一实施例的软件升级方法 50的示意流程图。方法 50包括以下 内容。
51, 获取按照本发明实施例生成 F0TA升级包的方法所生成的 F0TA升级包。
移动终端通过无线方式获取上述实施例中所生成的 F0TA升级包。 获取方式同现有 技术。 生成 F0TA升级包的方法例如参考图 2的实施例。 在该实施例中, 所生成的 F0TA 升级包包括升级文件、 覆盖文件和差分文件。
52, 将 F0TA升级包的升级文件存储为软件系统的同名文件。
其中, 从生成 F0TA升级包的实施例中得知, 所述最终版本软件的安全数据卡升级 包被存储为所述 F0TA升级包的升级文件。
53, 将 F0TA升级包的覆盖文件存储为软件系统的文件。
其中, 从生成 F0TA升级包的实施例中得知, 所述最终版本软件中包括的且所述过 渡软件中不包括的文件被存储为所述 F0TA升级包的覆盖文件。 这些文件的升级方式就 是直接覆盖到原版本中, 这些文件分别可以以一个完整的文件存放在升级包中。
54, 将 F0TA升级包的差分文件与软件系统的同名文件融合后存储为所述软件系统 的同名文件。
其中, 从生成 F0TA升级包的实施例中得知, 过渡软件和最终版本软件中文件名相 同且二进制格式不同的文件的差异部分被存储为所述 F0TA升级包的差分文件。
55, 在软件系统中, 通过脚本命令删除 F0TA升级包的升级脚本中写入的待删除文 件。
其中, 从生成 F0TA升级包的实施例中得知, 所述过渡软件中包括的且所述最终版 本软件不包括的文件作为待删除文件被写入所述 F0TA升级包的升级脚本中。
本发明实施例提供了一种软件升级方法,可以使得移动用户的多个旧版本通过本发 明另一实施例所生成的 F0TA升级包升级到最新版本,通过精简的 F0TA升级包大小便于 移动用户获取该 F0TA升级包。
图 6A是根据本发明实施例的一种移动终端 60的示意框图, 包括获取单元 61和升 级单元 62。
获取单元 61 用于获取按照本发明实施例生成 F0TA升级包的方法生成的无线固件 F0TA升级包;
升级单元 62用于使用所述 F0TA升级包升级所述移动终端的软件系统。
本发明实施例提供了一种软件升级装置,可以使得移动用户的多个旧版本通过本发 明另一实施例所生成的 F0TA升级包升级到最新版本, 且便于移动用户获取该 F0TA升级 包。
可选的, 如图 6B所示, 升级单元 62具体包括: 第一存储模块 621、 第二存储模块 622和第三存储模块 623。
当所述 F0TA升级包包括升级文件、覆盖文件和差分文件时,所述第一存储模块 621 将所述 F0TA升级包的升级文件存储为所述软件系统的同名文件;所述第二存储模块 622 将所述 F0TA升级包的覆盖文件存储为所述软件系统的文件; 所述第三存储模块 623将 所述 F0TA升级包的差分文件与所述软件系统的同名文件融合后存储为所述软件系统的 同名文件。
所述升级单元还包括删除模块 624。 删除模块 624在所述软件系统中, 通过脚本命 令删除所述 F0TA升级包的升级脚本中写入的待删除文件。
移动终端 60实现了方法 40和 /或 50, 出于简洁, 具体细节此处省略。, 移动终端 (Mobile Terminal ) 也可称之为用户设备 (UE, User Equipment), 移动用户设备等, 可以经无线接入网 (例如, RAN, Radio Access Network) 与一个或多个核心网进行通 信, 用户设备可以是移动终端, 如移动电话 (或称为 "蜂窝" 电话)和具有移动终端的 计算机, 例如, 可以是便携式、 袖珍式、 手持式、 计算机内置的或者车载的移动装置, 它们与无线接入网交换语言和 /或数据。 本发明实施例提供了一种软件升级装置,可以使得移动用户的多个旧版本通过本发 明另一实施例所生成的 F0TA升级包升级到最新版本,通过精简的 F0TA升级包大小便于 移动用户获取该 F0TA升级包。
本领域普通技术人员可以意识到, 结合本文中所公开的实施例描述的各示例的单元 及算法步骤, 能够以电子硬件、 或者计算机软件和电子硬件的结合来实现。 这些功能究 竟以硬件还是软件方式来执行, 取决于技术方案的特定应用和设计约束条件。 专业技术 人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认 为超出本发明的范围。
所属领域的技术人员可以清楚地了解到, 为描述的方便和简洁, 上述描述的系统、 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应过程, 在此不再赘述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统、 装置和方法, 可以 通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示意性的, 例如, 所述单 元的划分, 仅仅为一种逻辑功能划分, 实际实现时可以有另外的划分方式, 例如多个单 元或组件可以结合或者可以集成到另一个系统, 或一些特征可以忽略, 或不执行。 另一 点, 所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口, 装置 或单元的间接耦合或通信连接, 可以是电性, 机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的, 作为单元显示 的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以分布到多个 网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的 目的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是 各个单元单独物理存在, 也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存 储在一个计算机可读取存储介质中。 基于这样的理解, 本发明的技术方案本质上或者说 对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来, 该 计算机软件产品存储在一个存储介质中, 包括若干指令用以使得一台计算机设备(可以 是个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述方法的全部或部 分步骤。而前述的存储介质包括: U盘、移动硬盘、只读存储器(ROM, Read-Only Memory), 随机存取存储器 (RAM, Random Access Memory), 磁碟或者光盘等各种可以存储程序代 码的介质。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限于此, 任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易想到变化或替换, 都应 涵盖在本发明的保护范围之内。 因此, 本发明的保护范围应所述以权利要求的保护范围 为准。

Claims

权利要求
1、 一种生成无线固件 F0TA升级包的方法, 其特征在于, 包括:
根据比较至少 2个待升级版本中的 2个待升级版本的软件中的文件名和文件的二进 制格式, 生成过渡软件;
根据比较所述过渡软件和最终版本软件的文件名和文件的二进制格式, 生成 F0TA 升级包, 所述 F0TA升级包用于同时支持所述 2个待升级版本的软件通过无线网络在线 升级为所述最终版本软件。
2、 根据权利要求 1所述的方法, 其特征在于, 所述根据比较至少 2个待升级版本 中的 2个待升级版本的软件中的文件名和文件的二进制格式, 生成过渡软件具体包括: 比较所述 2个待升级版本的软件;
将文件名且文件的二进制格式均相同的文件存储为所述过渡软件的共同文件; 将文件名不同、或文件名相同且二进制格式不同的文件存储为所述过渡软件的区别 文件;
根据所述过渡软件的共同文件和所述过渡软件的区别文件生成所述过渡软件。
3、 根据权利要求 2所述的方法, 其特征在于, 所述将文件名不同、 或文件名相同 且二进制格式不同的文件存储为所述过渡软件的区别文件具体包括:
当所述最终版本软件包括与所述 2个待升级版本的软件中所述文件名相同但二进制 格式不同的文件的同名文件时, 则将所述文件名相同但二进制格式不同的文件排除在所 述过渡软件的区别文件之外; 或
当所述最终版本软件不包括与所述 2个待升级版本的软件中所述文件名相同但二进 制格式不同的文件的同名文件时, 则将所述文件名相同但二进制格式不同的文件保留在 所述过渡软件的区别文件中; 或
当所述 2个待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同 名文件包括在所述最终版本软件中时, 则将所述文件排除在所述过渡软件的区别文件之 夕卜; 或
当所述 2个待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同 名文件不包括在所述最终版本软件中时, 则将所述文件保留在所述过渡软件的区别文件 中。
4、 根据权利要求 1至 3任一所述的方法, 其特征在于, 所述根据比较所述过渡软 件和最终版本软件的文件名和文件的二进制格式, 生成 F0TA升级包具体包括:
比较所述过渡软件和最终版本软件;
将所述最终版本软件中包括的且所述过渡软件中不包括的文件存储为所述 F0TA升 级包的覆盖文件;
将文件名相同且二进制格式不同的文件的差异部分存储为所述 F0TA升级包的差分 文件;
根据所述 F0TA升级包的覆盖文件和差分文件生成所述升级软件包。
5、 根据权利要求 4所述的方法, 其特征在于, 所述根据比较所述过渡软件和最终 版本软件的文件名和文件的二进制格式, 生成 F0TA升级包还包括:
将所述最终版本软件的安全数据卡升级包存储为所述 F0TA升级包的升级文件; 对应的, 所述根据所述 F0TA升级包的覆盖文件和差分文件生成所述过渡软件具体 包括: 根据所述 F0TA升级包的升级文件、 覆盖文件和差分文件生成所述 F0TA升级包。
6、 根据权利要求 5所述的方法, 其特征在于, 所述根据比较所述过渡软件和最终 版本软件的文件名和文件的二进制格式, 生成 F0TA升级包还包括:
将所述过渡软件中包括的且所述最终版本软件不包括的文件作为待删除文件写入 所述 F0TA升级包的升级脚本中, 用于在升级的过程中通过脚本命令删除所述待删除文 件。
7、 根据权利要求 1至 6任一所述的方法, 其特征在于, 所述方法具体包括: 当所述 2个待升级版本的软件分别为第一版本软件和第二版本软件时,根据比较第 一版本软件和第二版本软件生成的过渡软件为第一过渡软件,根据比较所述第一过渡软 件和最终版本软件的文件名和文件的二进制格式, 生成的 F0TA升级包为第一 F0TA升级 包, 所述第一 F0TA升级包用于同时支持 2个待升级版本的软件, 所述第一版本软件和 所述第二版本软件, 通过无线网络在线升级为所述最终版本软件。
8、 根据权利要求 7所述的方法, 其特征在于, 所述方法还包括:
当包括 2个以上待升级版本的软件, 第 K+2版本软件, 其中 K为正整数时, 根据比 较所述第 K+2版本软件和所述第 Κ过渡软件中的文件名和文件的二进制格式,生成第 K+1 过渡软件, 其中 Κ为正整数;
根据比较所述第 K+1过渡软件和最终版本软件的文件名和文件的二进制格式, 生成 第 K+1 F0TA升级包, 所述第 K+1 F0TA升级包用于同时支持 K+2个待升级版本的软件通 过无线网络在线升级为所述最终版本软件。
9、 一种生成无线固件 F0TA升级包的装置, 其特征在于, 包括:
第一生成单元,用于根据比较至少 2个待升级版本中的 2个待升级版本的软件中的 文件名和文件的二进制格式, 生成过渡软件;
第二生成单元,用于根据比较所述第一生成单元生成的过渡软件和最终版本软件的 文件名和文件的二进制格式, 生成 F0TA升级包, 所述 F0TA升级包用于同时支持所述 2 个待升级版本的软件通过无线网络在线升级为所述最终版本软件。
10、 根据权利要求 9所述的装置, 其特征在于, 所述第一生成单元包括第一比较模 块、 第一存储模块和第一生成模块:
所述第一比较模块用于比较所述 2个待升级版本的软件;
所述第一存储模块用于将文件名且文件的二进制格式均相同的文件存储为所述过 渡软件的共同文件; 还用于将文件名不同、 或文件名相同且二进制格式不同的文件存储 为所述过渡软件的区别文件;
所述第一生成模块用于根据所述第一存储模块存储的所述过渡软件的共同文件和 所述过渡软件的区别文件生成所述过渡软件。
11、 根据权利要求 10所述的装置, 其特征在于, 所述第一存储模块具体用于: 当所述最终版本软件包括与所述 2个待升级版本的软件中所述文件名相同但二进制 格式不同的文件的同名文件时, 则将所述文件名相同但二进制格式不同的文件排除在所 述过渡软件的区别文件之外; 或
当所述最终版本软件不包括与所述 2个待升级版本的软件中所述文件名相同但二进 制格式不同的文件的同名文件时, 则将所述文件名相同但二进制格式不同的文件保留在 所述过渡软件的区别文件中; 或
当所述 2个待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同 名文件包括在所述最终版本软件中时, 则将所述文件排除在所述过渡软件的区别文件之 夕卜; 或
当所述 2个待升级版本的软件中具有互不包括的文件, 且所述互不包括的文件的同 名文件不包括在所述最终版本软件中时, 则将所述文件保留在所述过渡软件的区别文件 中。
12、 根据权利要求 9至 11任一所述的装置, 其特征在于, 所述第二生成单元包括 第二比较模块、 第二存储模块和第二生成模块:
所述第二比较模块用于比较所述过渡软件和最终版本软件;
所述第二存储模块用于将所述最终版本软件中包括的且所述第二比较模块生成的 过渡软件中不包括的文件存储为所述 F0TA升级包的覆盖文件; 还用于将文件名相同且 二进制格式不同的文件的差异部分存储为所述 F0TA升级包的差分文件;
所述第二生成模块用于根据所述第二存储模块所存储的 F0TA升级包的覆盖文件和 差分文件生成所述固件软件包。
13、 根据权利要求 12所述的装置, 其特征在于:
所述第二存储模块还用将所述最终版本软件的安全数据卡升级包存储为所述 F0TA 升级包的升级文件;
对应的, 所述第二生成模块具体用于根据所述第二存储模块所存储的 F0TA升级包 的升级文件、 覆盖文件和差分文件生成所述 F0TA升级包。
14、 根据权利要求 13所述的装置, 其特征在于:
所述第一生成模块还用于将所述过渡软件中包括的且所述最终版本软件不包括的 文件作为待删除文件写入所述 F0TA升级包的升级脚本中, 用于在升级的过程中通过脚 本命令删除所述待删除文件。
15、 根据权利要求 9至 14任一所述的装置, 其特征在于, 当所述 2个待升级版本 的软件分别为第一版本软件和第二版本软件时, 所述装置具体用于:
所述第一生成单元具体根据比较第一版本软件和第二版本软件生成的过渡软件为 第一过渡软件,所述第二生成单元根据比较所述第一生成单元生成的第一过渡软件和最 终版本软件的文件名和文件的二进制格式, 生成的 F0TA升级包为第一 F0TA升级包, 所 述第一 FOTA升级包用于同时支持 2个待升级版本的软件, 所述第一版本软件和所述第 二版本软件, 通过无线网络在线升级为所述最终版本软件。
16、 根据权利要求 15所述的装置, 其特征在于, 所述装置还用于:
当包括 2个以上待升级版本的软件, 第 K+2版本软件, 其中 K为正整数时, 所述第 —生成单元具体用于根据比较所述第 K+2版本软件和所述第 K过渡软件中的文件名和文 件的二进制格式, 生成第 K+1过渡软件, 其中 K为正整数;
所述第二生成单元具体用于根据比较所述第一生成单元生成的第 K+1过渡软件和最 终版本软件的文件名和文件的二进制格式, 生成第 K+1 F0TA升级包, 所述第 K+1 F0TA 升级包用于同时支持 K+2个待升级版本的软件通过无线网络在线升级为所述最终版本软 件。
17、 一种软件升级方法, 其特征在于, 包括:
获取按照权利要求 1至 8任一方法生成的无线固件 F0TA升级包;
使用所述 F0TA升级包升级移动终端的软件系统。
18、 根据权利要求 17所述的方法, 其特征在于, 所述 F0TA升级包包括升级文件、 覆盖文件和差分文件时, 所述升级移动终端的软件系统具体包括:
将所述 F0TA升级包的升级文件存储为所述软件系统的同名文件;
将所述 F0TA升级包的覆盖文件存储为所述软件系统的文件;
将所述 F0TA升级包的差分文件与所述软件系统的同名文件融合后存储为所述软件 系统的同名文件。
19、 根据权利要求 18所述的方法, 其特征在于, 所述升级移动终端的软件系统还 具体包括:
在所述软件系统中, 通过脚本命令删除所述 F0TA升级包的升级脚本中写入的待删 除文件。
20、 一种移动终端, 其特征在于, 包括获取单元和升级单元:
所述获取单元用于获取按照权利要求 1至 8任一方法生成的无线固件 F0TA升级包; 所述升级单元用于使用所述 F0TA升级包升级所述移动终端的软件系统。
21、 根据权利要求 20所述的移动终端, 其特征在于, 所述升级单元具体包括第一 存储模块、 第二存储模块和第三存储模块:
当所述 F0TA升级包包括升级文件、 覆盖文件和差分文件时, 所述第一存储模块将 所述 F0TA升级包的升级文件存储为所述软件系统的同名文件; 所述第二存储模块将所 述 F0TA升级包的覆盖文件存储为所述软件系统的文件; 所述第三存储模块将所述 F0TA 升级包的差分文件与所述软件系统的同名文件融合后存储为所述软件系统的同名文件。
22、 根据权利要求 21所述的移动终端, 其特征在于, 所述升级单元还包括删除模 块:
所述删除模块在所述软件系统中, 通过脚本命令删除所述 F0TA升级包的升级脚本 中写入的待删除文件。
PCT/CN2013/076303 2012-05-28 2013-05-28 生成无线固件升级包的方法和装置 WO2013178048A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP13797649.4A EP2857965B1 (en) 2012-05-28 2013-05-28 Method and device for generating firmware over-the-air upgrade package
US14/554,431 US20150082294A1 (en) 2012-05-28 2014-11-26 Method and Apparatus for Generating Firmware Over the Air Upgrade Package

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201210169141.7A CN102722386B (zh) 2012-05-28 2012-05-28 生成无线固件升级包的方法和装置
CN201210169141.7 2012-05-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/554,431 Continuation US20150082294A1 (en) 2012-05-28 2014-11-26 Method and Apparatus for Generating Firmware Over the Air Upgrade Package

Publications (1)

Publication Number Publication Date
WO2013178048A1 true WO2013178048A1 (zh) 2013-12-05

Family

ID=46948165

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2013/076303 WO2013178048A1 (zh) 2012-05-28 2013-05-28 生成无线固件升级包的方法和装置

Country Status (4)

Country Link
US (1) US20150082294A1 (zh)
EP (1) EP2857965B1 (zh)
CN (1) CN102722386B (zh)
WO (1) WO2013178048A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913733A (zh) * 2020-06-09 2020-11-10 武汉中科医疗科技工业技术研究院有限公司 制作自动升级包方法、装置、计算机设备和存储介质
CN113094073A (zh) * 2021-04-29 2021-07-09 芜湖雄狮汽车科技有限公司 车辆远程升级方法、装置及服务器

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103853574B (zh) * 2012-12-06 2015-09-16 腾讯科技(深圳)有限公司 一种软件升级的方法及系统
CN103336703B (zh) * 2013-07-08 2018-09-18 惠州Tcl移动通信有限公司 生成升级包的方法、服务器、软件升级方法、移动终端
CN103793245B (zh) * 2014-01-21 2016-08-17 浙江大学 一种嵌入式系统更新中增量文件的生成方法
CN104133704B (zh) * 2014-07-31 2018-01-26 百度在线网络技术(北京)有限公司 软件升级、升级包下发方法、装置和设备
CN105159718B (zh) * 2015-09-06 2018-11-16 杭州华为数字技术有限公司 固件升级方法及装置
CN105915363A (zh) * 2015-11-09 2016-08-31 乐视致新电子科技(天津)有限公司 一种过渡升级的方法及装置
CN105511911B (zh) * 2015-11-27 2019-02-12 青岛海信移动通信技术股份有限公司 系统固件升级包的生成方法及装置
CN105487907A (zh) * 2015-12-07 2016-04-13 青岛海信电器股份有限公司 一种差分包的制作方法和装置
EP3510483B1 (en) * 2016-09-23 2023-12-20 Huawei Technologies Co., Ltd. Binary image differential patching
US10332006B2 (en) 2016-12-15 2019-06-25 At&T Intellectual Property I, L.P. Optimization of over-the-air file distribution for connected cars based upon a heuristic scheduling algorithm
CN106843956B (zh) * 2017-01-17 2020-07-14 青岛海信移动通信技术股份有限公司 系统固件包的生成方法及装置
CN108037946B (zh) * 2017-11-03 2020-06-12 金证财富南京科技有限公司 一种应用程序热更新的方法、系统及服务器
CN110007937B (zh) * 2018-01-05 2022-09-16 网宿科技股份有限公司 一种系统更新的方法和系统
CN111104149A (zh) * 2018-10-25 2020-05-05 华为技术有限公司 一种固件升级方法、装置及终端
CN111666079B (zh) * 2019-03-05 2023-12-05 北京京东振世信息技术有限公司 软件升级的方法、装置、系统、设备和计算机可读介质
CN111930412A (zh) * 2019-05-13 2020-11-13 阿里巴巴集团控股有限公司 差分文件生成及固件在线升级的方法和装置
CN112882734B (zh) * 2021-03-11 2024-04-16 北京百度网讯科技有限公司 升级方法及装置、计算机设备和介质
CN114356363A (zh) * 2021-11-30 2022-04-15 重庆长安汽车股份有限公司 一种软件升级包的在线制作方法及管理系统
CN115328520A (zh) * 2022-09-09 2022-11-11 中国第一汽车股份有限公司 远程升级方法、装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1904837A (zh) * 2006-08-04 2007-01-31 华为技术有限公司 软件多版本升级的方法及系统
CN101026464A (zh) * 2006-02-25 2007-08-29 宇龙计算机通信科技(深圳)有限公司 无线终端的无线升级方法和无线升级系统
CN101425931A (zh) * 2008-12-08 2009-05-06 上海华为技术有限公司 一种通信设备软件升级的方法、相关设备及通信系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100506785B1 (ko) * 2000-11-17 2005-08-08 비트폰 코포레이션 정보의 업데이트 및 배포 시스템 및 방법
EP1533695B1 (en) * 2003-11-19 2013-08-07 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Updating data in a mobile terminal
KR100617793B1 (ko) * 2004-06-24 2006-08-28 삼성전자주식회사 통합 차이파일을 이용한 휴대용 단말기의 소프트웨어 버전업그레이드 방법
US7665081B1 (en) * 2006-05-06 2010-02-16 Kaspersky Lab, Zao System and method for difference-based software updating
CN101356519B (zh) * 2006-06-19 2011-11-09 三星电子株式会社 用于可利用空中机制的便携式设备的程序升级系统及方法
EP2229625B1 (en) * 2007-12-13 2011-08-31 Telefonaktiebolaget LM Ericsson (publ) Updating firmware of an electronic device
CN101719074A (zh) * 2009-12-17 2010-06-02 金蝶软件(中国)有限公司 补丁实现方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026464A (zh) * 2006-02-25 2007-08-29 宇龙计算机通信科技(深圳)有限公司 无线终端的无线升级方法和无线升级系统
CN1904837A (zh) * 2006-08-04 2007-01-31 华为技术有限公司 软件多版本升级的方法及系统
CN101425931A (zh) * 2008-12-08 2009-05-06 上海华为技术有限公司 一种通信设备软件升级的方法、相关设备及通信系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2857965A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913733A (zh) * 2020-06-09 2020-11-10 武汉中科医疗科技工业技术研究院有限公司 制作自动升级包方法、装置、计算机设备和存储介质
CN113094073A (zh) * 2021-04-29 2021-07-09 芜湖雄狮汽车科技有限公司 车辆远程升级方法、装置及服务器
CN113094073B (zh) * 2021-04-29 2024-03-12 芜湖雄狮汽车科技有限公司 车辆远程升级方法、装置及服务器

Also Published As

Publication number Publication date
EP2857965B1 (en) 2018-03-21
EP2857965A1 (en) 2015-04-08
EP2857965A4 (en) 2015-07-15
US20150082294A1 (en) 2015-03-19
CN102722386B (zh) 2015-09-30
CN102722386A (zh) 2012-10-10

Similar Documents

Publication Publication Date Title
WO2013178048A1 (zh) 生成无线固件升级包的方法和装置
CN102232304B (zh) 一种移动通信终端间进行系统升级的方法、系统及终端
US20210124573A1 (en) Firmware upgrade method and apparatus, and terminal
JP6236533B2 (ja) 差分アップデートパッケージの作成方法及び装置、システム差分アップデート方法及び装置
CN103942058B (zh) 一种嵌入式电子设备软件升级方法及系统
CN103235685B (zh) 一种设置终端操作系统桌面内容的方法和装置
CN1918932B (zh) 在用户身份模块/可移动用户身份模块卡中的优选漫游列表更新
WO2014059874A1 (zh) 移动终端及其软件升级方法
EP2472996B1 (en) Method and system for operating telephone directory
CN101984406A (zh) 一种通过无线局域网对终端进行升级的方法和系统
CN105094916A (zh) 一种基于模块的无线固件升级扩展方法和装置
CN103716346A (zh) 一种安卓手机客户端上应用的管理方法和装置
CN103368991A (zh) 云存储的即时同步系统
EP4270299A1 (en) Operating system upgrade method, electronic device, and storage medium
WO2017113317A1 (zh) 一种文件编辑方法和文件编辑器
CN101123769A (zh) 一种用电脑编辑手机内信息的方法
CN103533534B (zh) 一种dect手机的固件无线升级方法
CN103368990A (zh) 云存储的即时同步方法
KR102037556B1 (ko) 무선 단말의 네트워크 업그레이드에 자가적응한 전화번호 업그레이드 방법 및 장치
CN100525208C (zh) 一种数据同步方法
CN102970401A (zh) 一种记录联系人信息的方法及装置
CN101146282A (zh) 应用识别模块下载电子文件的方法
CN112988879A (zh) 访问数据库的方法、系统、装置、存储介质及处理器
CN102916993B (zh) 一种网络硬盘数据更新方法以及装置
CN106681761B (zh) 一种交互式升级的方法及系统

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: 13797649

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2013797649

Country of ref document: EP