CN104239110B - 减少ota增量包大小的方法与装置 - Google Patents
减少ota增量包大小的方法与装置 Download PDFInfo
- Publication number
- CN104239110B CN104239110B CN201410522461.5A CN201410522461A CN104239110B CN 104239110 B CN104239110 B CN 104239110B CN 201410522461 A CN201410522461 A CN 201410522461A CN 104239110 B CN104239110 B CN 104239110B
- Authority
- CN
- China
- Prior art keywords
- ota
- title
- application software
- symbol
- installation kit
- 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.)
- Expired - Fee Related
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种减少OTA增量包大小的方法与装置,在应用名称与其他字符之间插入预定的符号,并以插入的符号为界,过滤除应用名称外的其他字符,使得应用安装包的名称只保留应用本身的名称,如此,新版本系统与旧版本系统中同一应用软件的命名相一致,则基于此所生成的OTA增量包大大减少,从而减轻了下载负担,提高了升级速度。
Description
技术领域
本发明涉及智能终端技术领域,特别是涉及一种减少OTA增量包大小的方法与装置。
背景技术
目前市面上的品牌智能机,如Android智能机,有很多机器在上市之后仍然给用户提供升级服务,这种升级都是基于一种OTA的增量包发送给用户的,用户通过下载安装OTA增量包,然后升级手机系统版本获得手机厂商最新的软件体验。
用户升级的OTA增量包是在两个版本对比之后产生的一个差异文件集合,例如V1系统版本跟V2系统版本比较之后,生成的一个系统的差异文件的集合,用户通过这个增量包即可完成V1版本到V2版本的升级。
由于部分手机升级频繁,很多增量包过大,用户下载不仅需要很多流量,而且很费时间,如果能减小OTA包大小,将会解决以上问题。
发明内容
基于上述情况,本发明提出了一种减少OTA增量包大小的方法与装置,以提高系统升级效率,为此,采用的方案如下。
一种减少OTA增量包大小的方法,包括步骤:
在新版本系统编译过程中,对于应用软件安装包的名称,在应用软件名称与其后的字符之间插入预定的符号;
使用过滤函数过滤应用软件安装包名称中的预定符号及其之后的字符,只保留应用软件名称和后缀;
根据新旧版本系统之间的差异,通过编译命令生成OTA增量包。
一种减少OTA增量包大小的装置,包括:
符号插入模块,用于在新版本系统编译过程中,对于应用软件安装包的名称,在应用软件名称与其后的字符之间插入预定的符号;
符号过滤模块,用于使用过滤函数过滤应用软件安装包名称中的预定符号及其之后的字符,只保留应用软件名称和后缀;
增量包生成模块,用于根据新旧版本系统之间的差异,通过编译命令生成OTA增量包。
本发明减少OTA增量包大小的方法与装置,在应用名称与其他字符之间插入预定的符号,并以插入的符号为界,过滤除应用名称外的其他字符,使得应用安装包的名称只保留应用本身的名称,如此,新版本系统与旧版本系统中同一应用软件的命名相一致,则基于此所生成的OTA增量包大大减少,从而减轻了下载负担,提高了升级速度。
附图说明
图1为本发明减少OTA增量包大小的方法的流程示意图;
图2为本发明减少OTA增量包大小的装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
本发明减少OTA增量包大小的方法,如图1所示,包括以下步骤:
步骤s101、在新版本系统编译过程中,对于应用软件安装包的名称,在应用软件名称与其后的字符之间插入预定的符号。
OTA增量包的容量占比最大的是一些应用安装包,以Android系统为例,如果新版本系统里面有某个名字的apk而旧版本里面没有,将把新版本里面的这个apk整个复制到增量包里面,但是如果apk在新版本跟旧版本里面都有,则生成一个apk的差异化文件xx.apk.p,这个文件通常要比原apk小很多,我们在开发的时候经常将一些apk命名为“应用名称”+“日期和版本号”+“.apk”的方式以便于开发人员查找问题,由于每次版本号或日期不一样,因此每次都会造成整个apk复制到增量包里面。
基于以上情况,发明人从统一命名的角度出发来减小OTA增量包的大小。由于应用程序安装包的命名通常遵循上述“应用名称”+“日期和版本号”+“.apk”的方式,若将不一致的日期和版本号删除,则剩下的应用名称无论是在新版本的系统还是在旧版本的系统中都是一致的。
对于日期和版本号及其他所有非应用名称的字符,若手动删除,必将耗费大量的时间和精力,因此,本方法按照步骤s101所述,在每次编译新版本的系统时,先找出所有的应用软件的安装包,再在应用名称与其后的字符之间插入预定的符号,如qq#20140718_V100.apk,预定的符号还可以是*、%等等,但应区别于应用安装包名称中已有的字符,以便于后续步骤进行过滤。
步骤s102、使用过滤函数过滤应用软件安装包名称中的预定符号及其之后的字符,只保留应用软件名称和后缀。
仍然以Android系统为例,在编译脚本Android.mk中进行脚本控制,使用函数过滤应用apk#后面的部分。
过滤函数如下:
在编译模块中调用应用过滤函数:
LOCAL_MODULE:=$(call apk_name_filter,$(SINGLE_TARGET))
按照上述过程编译完成之后,新版本系统中应用软件安装包的名称除了后缀只有应用本来的名称,即“应用名称”+“.apk”,旧版本系统中应用软件安装包的名称也经历过上述步骤,因此也只有应用名称加后缀,如此,新旧版本的系统中统一应用软件的命名相一致。
步骤s103、根据新旧版本系统之间的差异,通过编译命令生成OTA增量包。
通过上述过程生成的OTA增量包只包含应用软件的差异化文件,重复的部分不包含在内,因而,相比传统方法,本方法显著减小了OTA增量包的大小,一般能减小30%~50%左右。
本发明减少OTA增量包大小的装置是与上述方法对应的装置,如图2所示,包括:
符号插入模块,用于在新版本系统编译过程中,对于应用软件安装包的名称,在应用软件名称与其后的字符之间插入预定的符号;
符号过滤模块,用于使用过滤函数过滤应用软件安装包名称中的预定符号及其之后的字符,只保留应用软件名称和后缀;
增量包生成模块,用于根据新旧版本系统之间的差异,通过编译命令生成OTA增量包。
作为一个优选的实施例,所述系统为Android系统,所述安装包为apk安装包。
作为一个优选的实施例,所述预定的符号为#、*或%。
由于本装置是与上述方法对应的,相同的技术特征不再重复解释。
综上,本发明减少OTA增量包大小的方法与装置,从OTA增量包过大的根本原因出发,将新旧版本系统中同一应用安装包名称中的日期版本号等字符过滤掉,只保留应用名称和后缀,则新旧版本系统中同一应用安装包的名称得以统一,使得OTA增量包只包含应用软件的差异化文件,重复的部分不包含在内,因而,相比传统方法,本方法显著减小了OTA增量包的大小。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (6)
1.一种减少OTA增量包大小的方法,其特征在于,包括步骤:
在新版本系统编译过程中,对于应用软件安装包的名称,在应用软件名称与其后的字符之间插入预定的符号;该符号区别于应用软件安装包名称中已有的字符;
使用过滤函数过滤应用软件安装包名称中的预定符号及其之后的字符,只保留应用软件名称和后缀;
根据新旧版本系统之间的差异,通过编译命令生成OTA增量包;
所述根据新旧版本系统之间的差异,通过编译命令生成OTA增量包具体包括:
基于过滤后的新旧版本系统应用软件安装包的名称之间的差异,通过编译命令生成OTA增量包。
2.根据权利要求1所述的减少OTA增量包大小的方法,其特征在于,
所述系统为Android系统,所述安装包为apk安装包。
3.根据权利要求1或2所述的减少OTA增量包大小的方法,其特征在于,
所述预定的符号为#、*或%。
4.一种减少OTA增量包大小的装置,其特征在于,包括:
符号插入模块,用于在新版本系统编译过程中,对于应用软件安装包的名称,在应用软件名称与其后的字符之间插入预定的符号;该符号区别于应用软件安装包名称中已有的字符;
符号过滤模块,用于使用过滤函数过滤应用软件安装包名称中的预定符号及其之后的字符,只保留应用软件名称和后缀;
增量包生成模块,用于根据新旧版本系统之间的差异,通过编译命令生成OTA增量包具体包括:
基于过滤后的新旧版本系统应用软件安装包的名称之间的差异,通过编译命令生成OTA增量包。
5.根据权利要求4所述的减少OTA增量包大小的装置,其特征在于,
所述系统为Android系统,所述安装包为apk安装包。
6.根据权利要求4或5所述的减少OTA增量包大小的装置,其特征在于,
所述预定的符号为#、*或%。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410522461.5A CN104239110B (zh) | 2014-09-30 | 2014-09-30 | 减少ota增量包大小的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410522461.5A CN104239110B (zh) | 2014-09-30 | 2014-09-30 | 减少ota增量包大小的方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104239110A CN104239110A (zh) | 2014-12-24 |
CN104239110B true CN104239110B (zh) | 2017-06-16 |
Family
ID=52227245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410522461.5A Expired - Fee Related CN104239110B (zh) | 2014-09-30 | 2014-09-30 | 减少ota增量包大小的方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104239110B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487907A (zh) * | 2015-12-07 | 2016-04-13 | 青岛海信电器股份有限公司 | 一种差分包的制作方法和装置 |
CN106657361B (zh) * | 2016-12-30 | 2019-09-13 | 歌尔科技有限公司 | 一种代码添加混淆的安卓安装包ota升级方法 |
EP3866004B1 (en) | 2018-11-09 | 2025-01-08 | Huawei Technologies Co., Ltd. | Over-the-air upgrade method and related device |
CN113805930A (zh) * | 2021-10-09 | 2021-12-17 | 中国银行股份有限公司 | 增量组包方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7149508B2 (en) * | 2003-02-05 | 2006-12-12 | Samsung Electronics Co., Ltd. | System and method for delta-based over-the-air software upgrades for a wireless mobile station |
US7529779B2 (en) * | 2004-06-10 | 2009-05-05 | Samsung Electronics Co., Ltd. | Apparatus and method for efficient generation of delta files for over-the-air upgrades in a wireless network |
CN101356519B (zh) * | 2006-06-19 | 2011-11-09 | 三星电子株式会社 | 用于可利用空中机制的便携式设备的程序升级系统及方法 |
CN102650947B (zh) * | 2012-04-01 | 2015-06-24 | 广东欧珀移动通信有限公司 | 一种Android手持设备连续增量的空中升级方法 |
CN102902555B (zh) * | 2012-09-06 | 2016-09-21 | 华为终端有限公司 | 一种升级方法、装置及升级设备 |
CN103313229B (zh) * | 2013-05-27 | 2017-04-19 | 华为终端有限公司 | 一种空中下载技术升级的方法及设备 |
-
2014
- 2014-09-30 CN CN201410522461.5A patent/CN104239110B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN104239110A (zh) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN107506219A (zh) | 一种基于Android系统的通用版本升级方法 | |
CN104239110B (zh) | 减少ota增量包大小的方法与装置 | |
CN103902265B (zh) | 一种应用实现方法及相关装置 | |
CN110175042A (zh) | 一种固件升级方法、装置及其相关设备 | |
CN103942067B (zh) | 智能设备自动清理软件安装包文件的方法及装置 | |
CN105094913B (zh) | 系统、基带固件和系统应用升级方法及装置 | |
CN106126203B (zh) | 一种ota开机加速方法及系统 | |
CN104991793A (zh) | 一种用于应用程序分包的方法、装置以及系统 | |
CN104461648B (zh) | 一种智能终端ota升级备份的方法及系统 | |
CN105743933B (zh) | 一种路由器的模块升级方法及系统 | |
CN103095838A (zh) | 一种通过下载增量升级包来升级安卓智能手机软件的方法 | |
CN105094916A (zh) | 一种基于模块的无线固件升级扩展方法和装置 | |
CN104503790B (zh) | 一种应用版本的管理方法及系统、智能终端 | |
CN104657164B (zh) | 软件升级处理方法和装置 | |
CN101551746A (zh) | 移动通讯终端对ui界面配置方法 | |
CN105763626A (zh) | 适用于应用客户端支付的sdk初始化方法 | |
JP7257554B2 (ja) | モデルファイルのディストリビューション方法、プラットホーム、システム、端末及び可読記憶媒体 | |
CN105068853A (zh) | 渠道包的输出方法及装置 | |
CN109710287A (zh) | 一种热更新方法、装置及计算机存储介质 | |
CN104572212A (zh) | 一种终端更新系统及其更新方法 | |
CN110221855B (zh) | 一种app与服务器协同更新和离线运行的方法 | |
CN106445601A (zh) | 一种插件升级的方法及装置 | |
CN104111856A (zh) | 一种基于资源包的软件升级方法和系统 | |
CN112269635B (zh) | 一种功能模块配置方法、系统及电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. |
|
CP01 | Change in the name or title of a patent holder | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170616 |
|
CF01 | Termination of patent right due to non-payment of annual fee |