CN114168182A - 一种Android终端应用升级的方法 - Google Patents

一种Android终端应用升级的方法 Download PDF

Info

Publication number
CN114168182A
CN114168182A CN202111350816.3A CN202111350816A CN114168182A CN 114168182 A CN114168182 A CN 114168182A CN 202111350816 A CN202111350816 A CN 202111350816A CN 114168182 A CN114168182 A CN 114168182A
Authority
CN
China
Prior art keywords
packets
differential
application
full
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111350816.3A
Other languages
English (en)
Inventor
廖泽宇
秦曙光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Readboy Education Technology Co Ltd
Original Assignee
Readboy Education Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Readboy Education Technology Co Ltd filed Critical Readboy Education Technology Co Ltd
Priority to CN202111350816.3A priority Critical patent/CN114168182A/zh
Publication of CN114168182A publication Critical patent/CN114168182A/zh
Pending legal-status Critical Current

Links

Classifications

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种Android终端应用升级的方法,只需要对相邻版本的全量包做差分包,在终端上进行升级时,采用遍历差分包的方式逐步生成全量包并逐步校验,在所有校验都通过后生成最终的全量包即可进行升级。大大减少了生成差分包的数量和时间,降低了差分包的运维成本,提高了版本发布的效率及安全性。

Description

一种Android终端应用升级的方法
技术领域
本发明涉及智能设备技术领域,具体涉及一种Android终端应用升级的方法。
背景技术
Android手机和平板等终端销售到市场后,生产厂家经常要发布系统升级用于优化系统或者解决各种软硬件问题,系统升级以增量升级为主,增量升级只升级新系统相对于旧系统变化的部分,这样可以使系统升级小而快。对于一款Android终端,在整个销售和维护周期内可能要发布多个版本的ROM,这样市场上也就对应有多个版本的程序,为了使每个终端都能一次性升级到最新版本的程序,开发一个新的ROM时,就需要对市场所有版本的ROM做增量升级包,上传并配置服务器。假如市场上有10个版本的ROM,开发第11个版本的ROM时,就要针对前面10个版本的ROM做10个增量包,当开发第12个版本的ROM时,就需要做11个增量包,以此类推。
生成一个增量包需要花费较长的时间,当市场上ROM版本较多时,生成多个增量包需要花费非常长的时间,而未必每个增量包都会被用到,因为市场上有些旧版的ROM可能早已升级到较新的版本了,也就是某些版本ROM的终端已经不存在了,这无疑造成资源的浪费。
发明内容
针对现有技术的不足,本发明旨在提供一种Android终端应用升级的方法。
为了实现上述目的,本发明采用如下技术方案:
一种Android终端应用升级的方法,具体过程为:
S1、在服务器中存储各个应用的各个版本的全量包、各个应用的相邻版本的全量包之间的差分包,以及各个全量包的配置信息;全量包的配置信息包括应用名称、包名、版本和md5值;所述差分包的命名格式为默认前缀-低版本-高版本-差分次序;
S2、当android终端检测到某个应用有新版本,并触发应用更新升级时,android终端进一步触发上报应用信息到所述服务器,并请求服务器进行更新升级;
S3、所述服务器获取到上报的应用信息后,根据应用信息获取到该应用当前版本到该应用最新版本之间的所有差分包的列表,以及该应用当前版本以后的各版本的全量包的配置信息列表;所述差分包的列表按照所述差分次序升序排列,所述全量包的配置信息列表按照版本升序排列;
S4、所述服务器将获取的差分包的列表及全量包的配置信息列表下发给该android终端,该android终端通过下载获得;
S5、所述android终端遍历所述差分包的列表,将android终端中关于该应用当前最新的全量包和差分包的列表中排序第一的差分包进行合并生成最新的全量包,并计算合并生成的最新的全量包的md5值;然后获取全量包的配置信息列表中排序第一的配置信息,对最新的终端全量包的md5值进行校验,若校验失败则提示升级失败,并引导用户重试升级,否则删除差分包的列表中排序第一的差分包并删除全量包的配置信息列表中排序第一的配置信息,然后跳转至步骤S6;
S6、重新执行步骤S5,直至所述差分包列表遍历完毕,此时的最新的终端全量包记为最终升级包,所述android终端根据最终升级包进行升级。
进一步地,所述应用信息包括应用名、包名、当前版本。
本发明的有益效果在于:本发明方法中,只需要对相邻版本的全量包做差分包,在终端上进行升级时,采用遍历差分包的方式逐步生成全量包并逐步校验,在所有校验都通过后生成最终的全量包即可进行升级。大大减少了生成差分包的数量和时间,降低了差分包的运维成本,提高了版本发布的效率及安全性。
具体实施方式
以下将对本发明作进一步的描述,需要说明的是,本实施例以本技术方案为前提,给出了详细的实施方式和具体的操作过程,但本发明的保护范围并不限于本实施例。
本实施例公开了一种Android终端应用升级的方法,具体过程为:
S1、在服务器中存储各个应用的各个版本的全量包、各个应用的相邻版本的全量包之间的差分包,以及各个全量包的配置信息;全量包的配置信息包括应用名称、包名、版本和md5值;所述差分包的命名格式为默认前缀-低版本-高版本-差分次序(如应用存在1.0、2.0、3.0总共三个版本,则共计生成两个相邻版本的差分包patch-1.0-2.0-1、patch-2.0-3.0-2)。
S2、当android终端检测到某个应用有新版本,并触发应用更新升级时,android终端进一步触发上报应用信息(应用名、包名、当前版本)到所述服务器,并请求服务器进行更新升级。
S3、所述服务器获取到上报的应用信息后,根据应用信息获取到该应用当前版本到该应用最新版本之间的所有差分包的列表,以及该应用当前版本以后的各版本的全量包的配置信息列表;所述差分包的列表按照所述差分次序升序排列,所述全量包的配置信息列表按照版本升序排列;
例如,上报信息中当前版本为1.0,应用最新版本为3.0,则差分包列表由patch-1.0-2.0-1、patch-2.0-3.0-2构成,而全量包的配置信息列表为全量包2.0及全量包3.0的配置信息。
S4、所述服务器将获取的差分包的列表及全量包的配置信息列表下发给该android终端,该android终端通过下载获得;
S5、所述android终端遍历所述差分包的列表,将该应用当前版本的全量包和差分包的列表中排序第一的差分包进行合并生成最新的终端全量包,并计算所述最新的终端全量包的md5值;然后获取全量包的配置信息列表中排序第一的配置信息,对最新的终端全量包的md5值进行校验,若校验失败则提示升级失败,并引导用户重试升级,否则删除差分包的列表中排序第一的差分包并删除全量包的配置信息列表中排序第一的配置信息,然后跳转至步骤S6;
S6、重新执行步骤S5,直至所述差分包列表遍历完毕,此时的最新的终端全量包记为最终升级包,所述android终端根据最终升级包进行升级。
对于本领域的技术人员来说,可以根据以上的技术方案和构思,给出各种相应的改变和变形,而所有的这些改变和变形,都应该包括在本发明权利要求的保护范围之内。

Claims (2)

1.一种Android终端应用升级的方法,其特征在于,具体过程为:
S1、在服务器中存储各个应用的各个版本的全量包、各个应用的相邻版本的全量包之间的差分包,以及各个全量包的配置信息;全量包的配置信息包括应用名称、包名、版本和md5值;所述差分包的命名格式为默认前缀-低版本-高版本-差分次序;
S2、当android终端检测到某个应用有新版本,并触发应用更新升级时,android终端进一步触发上报应用信息到所述服务器,并请求服务器进行更新升级;
S3、所述服务器获取到上报的应用信息后,根据应用信息获取到该应用当前版本到该应用最新版本之间的所有差分包的列表,以及该应用当前版本以后的各版本的全量包的配置信息列表;所述差分包的列表按照所述差分次序升序排列,所述全量包的配置信息列表按照版本升序排列;
S4、所述服务器将获取的差分包的列表及全量包的配置信息列表下发给该android终端,该android终端通过下载获得;
S5、所述android终端遍历所述差分包的列表,将android终端中关于该应用当前最新的全量包和差分包的列表中排序第一的差分包进行合并生成最新的全量包,并计算合并生成的最新的全量包的md5值;然后获取全量包的配置信息列表中排序第一的配置信息,对最新的终端全量包的md5值进行校验,若校验失败则提示升级失败,并引导用户重试升级,否则删除差分包的列表中排序第一的差分包并删除全量包的配置信息列表中排序第一的配置信息,然后跳转至步骤S6;
S6、重新执行步骤S5,直至所述差分包列表遍历完毕,此时的最新的终端全量包记为最终升级包,所述android终端根据最终升级包进行升级。
2.根据权利要求1所述的方法,其特征在于,所述应用信息包括应用名、包名、当前版本。
CN202111350816.3A 2021-11-15 2021-11-15 一种Android终端应用升级的方法 Pending CN114168182A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111350816.3A CN114168182A (zh) 2021-11-15 2021-11-15 一种Android终端应用升级的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111350816.3A CN114168182A (zh) 2021-11-15 2021-11-15 一种Android终端应用升级的方法

Publications (1)

Publication Number Publication Date
CN114168182A true CN114168182A (zh) 2022-03-11

Family

ID=80479122

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111350816.3A Pending CN114168182A (zh) 2021-11-15 2021-11-15 一种Android终端应用升级的方法

Country Status (1)

Country Link
CN (1) CN114168182A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116257277A (zh) * 2023-05-12 2023-06-13 天津卓朗昆仑云软件技术有限公司 镜像文件的更新方法、装置及voi系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070294685A1 (en) * 2006-06-19 2007-12-20 Samsung Electronics Co., Ltd. Program upgrade system and method for ota-capable portable device
CN104661090A (zh) * 2015-02-04 2015-05-27 深圳市九洲电器有限公司 机顶盒升级方法及系统
CN106201588A (zh) * 2016-06-28 2016-12-07 青岛海信移动通信技术股份有限公司 终端的软件升级方法和终端
WO2017036183A1 (zh) * 2015-09-02 2017-03-09 中兴通讯股份有限公司 差分升级包的处理方法及装置,升级方法、系统及装置
CN108733400A (zh) * 2018-04-27 2018-11-02 新光互联投资管理有限公司 一种App增量热更新方法及服务系统
CN112994955A (zh) * 2021-04-21 2021-06-18 恒生电子股份有限公司 升级包发送管理方法、增量升级包制备方法及相关装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070294685A1 (en) * 2006-06-19 2007-12-20 Samsung Electronics Co., Ltd. Program upgrade system and method for ota-capable portable device
CN104661090A (zh) * 2015-02-04 2015-05-27 深圳市九洲电器有限公司 机顶盒升级方法及系统
WO2017036183A1 (zh) * 2015-09-02 2017-03-09 中兴通讯股份有限公司 差分升级包的处理方法及装置,升级方法、系统及装置
CN106201588A (zh) * 2016-06-28 2016-12-07 青岛海信移动通信技术股份有限公司 终端的软件升级方法和终端
CN108733400A (zh) * 2018-04-27 2018-11-02 新光互联投资管理有限公司 一种App增量热更新方法及服务系统
CN112994955A (zh) * 2021-04-21 2021-06-18 恒生电子股份有限公司 升级包发送管理方法、增量升级包制备方法及相关装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116257277A (zh) * 2023-05-12 2023-06-13 天津卓朗昆仑云软件技术有限公司 镜像文件的更新方法、装置及voi系统

Similar Documents

Publication Publication Date Title
TWI687867B (zh) 用於可信執行環境的可信應用產生及安裝方法
CN106572372B (zh) 一种机顶盒升级方法及机顶盒
CN107608706B (zh) 一种基于功能模块的应用程序自动热更新方法
KR101299099B1 (ko) 임베디드 시스템에서 최적화된 가상화 모듈을 관리하는 장치 및 방법
US8965746B2 (en) System and method for validating an electrical network model
CN106886437B (zh) 应用程序更新方法与装置
CN112650520A (zh) 电表升级方法、系统、智能电表及存储介质
CN104915234B (zh) 一种Android移动终端升级上报方法及系统
US20170230713A1 (en) Set Top Box Upgrade Method and Apparatus
CN109324821B (zh) 一种自助终端系统版本管理方法
CN114168182A (zh) 一种Android终端应用升级的方法
CN107396188A (zh) 一种机顶盒的升级方法及系统
WO2016145897A1 (zh) 一种更新数据包的制作方法及装置
CN113961226B (zh) 一种软件开发工具包修复方法、终端、服务器及设备
CN112286565B (zh) 一种基于存储容器的嵌入式系统差分升级方法
CN116340956B (zh) 一种电力嵌入式终端设备的可信防护优化方法和装置
CN112667272A (zh) 电表升级方法、系统、智能电表及存储介质
CN110990046A (zh) 一种基于动态文件的升级方法
CN105872106A (zh) 空中下载升级方法、空中下载服务器及终端
CN112040320B (zh) 一种电视果应用的升级方法及装置
CN112657196A (zh) 资源更新方法、装置、计算机设备和可读存储介质
CN113326055B (zh) 一种设备更新方法及相关装置
CN112433744A (zh) 一种基于智能合约的税务终端应用系统升级迁移方法
CN112579141A (zh) 一种嵌入式系统的固件更新方法、装置、设备及存储介质
WO2023045090A1 (zh) 一种基于终端状态进行固件升级的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination