CN112579132A - 一种基于版本号管理的资源热更新方法 - Google Patents
一种基于版本号管理的资源热更新方法 Download PDFInfo
- Publication number
- CN112579132A CN112579132A CN202011590637.2A CN202011590637A CN112579132A CN 112579132 A CN112579132 A CN 112579132A CN 202011590637 A CN202011590637 A CN 202011590637A CN 112579132 A CN112579132 A CN 112579132A
- Authority
- CN
- China
- Prior art keywords
- version
- background
- version information
- local
- file
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 230000008569 process Effects 0.000 claims description 7
- 238000007726 management method Methods 0.000 description 8
- 238000012423 maintenance Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种基于版本号管理的资源热更新方法,包括以下步骤:步骤1:客户端启动游戏后,向后台请求数据版本信息;步骤2:如果本地版本小于后台版本,判断本地版本和后台版本的大版本是否相同;步骤31:如果大版本不同,则需要下载全部版本信息;步骤32:如果大版本相同,则只需要下载小版本信息;步骤42:用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;步骤5:根据更新文件列表来下载文件;步骤6:将所有更新文件都下载完成后,修改本地的版本信息和后台版本信息和修改本地的版本号和后台的版本号;步骤7:进入游戏。本发明通过大小版本信息的方式,来规避每次均需下载所有版本信息的问题。
Description
技术领域
本发明涉及一种基于版本号管理的资源热更新方法。
背景技术
热更新是一种各大手游等众多App常用的更新方式。简单来说,就是在用户通下载安装APP之后,打开App时遇到的即时更新。热更新可以更新游戏中的资源,代码以及配置文件等多种内容,可以是修复bug,更新游戏内容版本。热更新也可以动态下发代码,它可以使开发者在不发布新版本的情况下,修复BUG和发布功能,让开发者得以绕开平台的审核机制,避免长时间的审核等待以及版本被拒导致无法上线。
在手机游戏的开发早期,通常是通过完整版本发布的形式,来发布新版本的游戏。这种方式会需要通过平台方的审核,并且对于玩家而言需要重新下载游戏,并且重新安装,操作上非常不便。新包的发布一般要进行全部的测试,审核流程也比较长,比较耽误游戏内容的迭代。
目前,每次必然下载一个完整的版本的信息列表,这个文件往往会比较大,同时文件的内容过多,必然导致比对耗时比较长。其次往往只能更新资源,不能更新代码,只能用来做bug修复。
发明内容
为解决上述技术问题,本发明的目的是提供一种基于版本号管理的资源热更新方法。
为实现上述目的,本发明采用如下技术方案:
一种基于版本号管理的资源热更新方法,包括以下步骤:
步骤1:客户端启动游戏后,向后台请求数据版本信息;
步骤2:如果本地版本小于后台版本,判断本地版本和后台版本的大版本是否相同;
步骤31:如果大版本不同,则需要下载全部版本信息;
步骤41:将全部版本信息进行合并,并用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;
步骤32:如果大版本相同,则只需要下载小版本信息;
步骤42:用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;
步骤5:根据更新文件列表来下载文件;
步骤6:将所有更新文件都下载完成后,修改本地的版本信息和后台版本信息,同时修改本地的版本号和后台的版本号;
步骤7:进入游戏。
优选地,所述的一种基于版本号管理的资源热更新方法,所述步骤1后,如果本地版本大于后台版本,跳过更新流程,直接进入游戏中。
优选地,所述的一种基于版本号管理的资源热更新方法,所述步骤31中全部版本信息为大版本的版本文件和最新小版本的配置文件。
优选地,所述的一种基于版本号管理的资源热更新方法,步骤6中,修改后的本地的版本信息和后台版本信息以及修改本地的版本号和后台的版本号需要一致。
借由上述方案,本发明至少具有以下优点:
1、本发明能够迅速出包,针对手机游戏客户端能够更快的迭代更新。
2、本发明通过差量更新的方式,减少了更新文件大小,节省了CDN(内容分发网络)的流量成本,当游戏用户数达到几十万以上时,每次更新都能节约大量成本。
3、本发明采用了差量上传的方式,避免了每次对外更新都需要上传全包,只需要上传少量资源,加速了更新的流程。节约了整个项目组都需要等待更新的时间成本。
4、本发明通过热更新的方式,避免平台的审核,避免了审核等待和审核被拒后反复提审导致的时间成本,同时也避免了多次提审被拒导致新版本游戏内容无法上线的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明的流程图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例
如图1所示,一种基于版本号管理的资源热更新方法,包括以下步骤:
步骤1:客户端启动游戏后,向后台请求数据版本信息;
步骤2:如果本地版本小于后台版本,判断本地版本和后台版本的大版本是否相同;
步骤31:如果大版本不同,则需要下载全部版本信息;
步骤41:将全部版本信息进行合并,并用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;
步骤32:如果大版本相同,则只需要下载小版本信息;
步骤42:用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;
步骤5:根据更新文件列表来下载文件;
步骤6:将所有更新文件都下载完成后,修改本地的版本信息和后台版本信息,同时修改本地的版本号和后台的版本号;
步骤7:进入游戏。
本发明中述步骤1后,如果本地版本大于后台版本,跳过更新流程,直接进入游戏中。
本发明中所述步骤31中全部版本信息为大版本的版本文件和最新小版本的配置文件。
本发明中步骤6中,修改后的本地的版本信息和后台版本信息以及修改本地的版本号和后台的版本号需要一致。
实施例一
在上述实施例的基础上,具体操作步骤如下:
1、版本资源的数据管理和分布
A)在项目中,以安卓版本为例,首先会创建三个目录,分别是Android,AndroidBase和Export目录;
B)Android中包含Versions文件,其中记录所有文件的版本信息;
C)AndroidBase的目录结构跟Android结构一致,不过其中记录的是大版本起点的文件信息;
D)Export目录中存放导出的差异版本信息;
2、更新资源的生成
A)点击打包->增量制作资源包;
B)制作完完整资源包后,会在Android目录下生成游戏中全部资源信息;
C)如果之前没有制作基础版本,点制作更新包->制作基础版本,则会将Android目录下的资源复制一份到AndroidBase目录下,并且修改Version文件中的版本信息为大于当前版本整百版本,如原来版本是90,则改写成100;
D)如果是大版本更新时,直接导出基础版本,提供给运维人员;
E)如果是小版本更新,则不要制作基础版本,直接导出差异版本,给运维人员;
3、更新资源的发布
客户端更新需要按照流程开始进行:
A)打包人员根据版本情况打出对应的更新包;
B)运维人员把更新包放到CDN上,更新包以版本号为目录名,更新地址地址不再需要每次修改,只要修改更新版本号即可;
C)测试完成后,对外更新即可;
4、用户的资源更新
A)用户打开游戏后,会显示检测游戏更新;
B)如果检测完成后,没有更新会直接进入游戏;
C)如果有更新,游戏后台会走本方案设计的更新流程来更新资源,在更新过程中会出现一个加载界面,用于展示更新进度。
在上述的更新资源的发布情况下,需要做版本更新,
1、游戏中游戏内容的大版本更新,此时修改的内容比较多;
2、游戏运营一段时间后,累计了一定量的bug修改和资源优化。
以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。
Claims (4)
1.一种基于版本号管理的资源热更新方法,其特征在于,包括以下步骤:
步骤1:客户端启动游戏后,向后台请求数据版本信息;
步骤2:如果本地版本小于后台版本,判断本地版本和后台版本的大版本是否相同;
步骤31:如果大版本不同,则需要下载全部版本信息;
步骤41:将全部版本信息进行合并,并用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;
步骤32:如果大版本相同,则只需要下载小版本信息;
步骤42:用本地的版本信息和后台的版本信息进行比较,如果Md5值不同,则将该文件加入到更新文件列表;
步骤5:根据更新文件列表来下载文件;
步骤6:将所有更新文件都下载完成后,修改本地的版本信息和后台版本信息,同时修改本地的版本号和后台的版本号;
步骤7:进入游戏。
2.根据权利要求1所述的一种基于版本号管理的资源热更新方法,其特征在于:所述步骤1后,如果本地版本大于后台版本,跳过更新流程,直接进入游戏中。
3.根据权利要求1所述的一种基于版本号管理的资源热更新方法,其特征在于:所述步骤31中全部版本信息为大版本的版本文件和最新小版本的配置文件。
4.根据权利要求1所述的一种基于版本号管理的资源热更新方法,其特征在于:步骤6中,修改后的本地的版本信息和后台版本信息以及修改本地的版本号和后台的版本号需要一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590637.2A CN112579132A (zh) | 2020-12-29 | 2020-12-29 | 一种基于版本号管理的资源热更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590637.2A CN112579132A (zh) | 2020-12-29 | 2020-12-29 | 一种基于版本号管理的资源热更新方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112579132A true CN112579132A (zh) | 2021-03-30 |
Family
ID=75143914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011590637.2A Pending CN112579132A (zh) | 2020-12-29 | 2020-12-29 | 一种基于版本号管理的资源热更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579132A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012000272A1 (zh) * | 2010-06-29 | 2012-01-05 | 中兴通讯股份有限公司 | 一种文件系统被破坏后的自救方法和设备 |
CN103218239A (zh) * | 2013-04-09 | 2013-07-24 | 沈阳美行科技有限公司 | 一种支持导航机地图版本增量更新版本的方法 |
CN106371875A (zh) * | 2016-08-31 | 2017-02-01 | 南威软件股份有限公司 | 一种基于html5的手机应用更新机制 |
CN106897103A (zh) * | 2017-03-03 | 2017-06-27 | 广州四三九九信息科技有限公司 | 一种移动端网络游戏版本快速热更新的方法 |
CN107844313A (zh) * | 2017-11-24 | 2018-03-27 | 武汉斗鱼网络科技有限公司 | 一种Android中SDK版本升级方法及装置 |
CN109240726A (zh) * | 2018-09-30 | 2019-01-18 | 湖北华联博远科技有限公司 | 一种软件更新方法及系统 |
CN111475185A (zh) * | 2020-03-11 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种跨大版本稳定升级bmc镜像的方法及系统 |
-
2020
- 2020-12-29 CN CN202011590637.2A patent/CN112579132A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012000272A1 (zh) * | 2010-06-29 | 2012-01-05 | 中兴通讯股份有限公司 | 一种文件系统被破坏后的自救方法和设备 |
CN103218239A (zh) * | 2013-04-09 | 2013-07-24 | 沈阳美行科技有限公司 | 一种支持导航机地图版本增量更新版本的方法 |
CN106371875A (zh) * | 2016-08-31 | 2017-02-01 | 南威软件股份有限公司 | 一种基于html5的手机应用更新机制 |
CN106897103A (zh) * | 2017-03-03 | 2017-06-27 | 广州四三九九信息科技有限公司 | 一种移动端网络游戏版本快速热更新的方法 |
CN107844313A (zh) * | 2017-11-24 | 2018-03-27 | 武汉斗鱼网络科技有限公司 | 一种Android中SDK版本升级方法及装置 |
CN109240726A (zh) * | 2018-09-30 | 2019-01-18 | 湖北华联博远科技有限公司 | 一种软件更新方法及系统 |
CN111475185A (zh) * | 2020-03-11 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种跨大版本稳定升级bmc镜像的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9940225B2 (en) | Automated error checking system for a software application and method therefor | |
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN102118500B (zh) | 移动终端开源操作系统基于软件包的在线自动更新方法 | |
CN105786538B (zh) | 基于安卓系统的软件升级方法和装置 | |
CN109491695A (zh) | 一种集成安卓应用的增量更新方法 | |
CN105893008A (zh) | 一种定制多渠道安装包的方法及装置 | |
CN109800005B (zh) | 一种客户端热更新方法及装置 | |
CN108733400A (zh) | 一种App增量热更新方法及服务系统 | |
CN111158674A (zh) | 组件管理方法、系统、设备及存储介质 | |
CN106371875B (zh) | 一种基于html5的手机应用更新方法 | |
CN106874195A (zh) | 一种针对android应用的bug修复和持续交付方案 | |
CN112256359A (zh) | 微服务合并方法、装置、电子设备及可读存储介质 | |
CN111538523A (zh) | 差分升级方法、设备及存储介质 | |
CN110908677B (zh) | 一种Flutter应用安装包体积优化的方法及存储介质 | |
CN115543429A (zh) | 项目环境的搭建方法、电子设备及计算机可读存储介质 | |
CN112286543B (zh) | 一种应用服务部署方法及装置 | |
CN110688198B (zh) | 系统调用方法、装置和电子设备 | |
CN112579132A (zh) | 一种基于版本号管理的资源热更新方法 | |
EP3346642A1 (en) | Method and device for managing network element model | |
CN116069366A (zh) | 客户端应用程序更新方法及装置、存储介质及电子设备 | |
CN117441157A (zh) | 软件更新器 | |
CN113849181A (zh) | 交叉编译工具链构建方法、装置、电子设备及存储介质 | |
CN108733426B (zh) | 电子设备运行应用的方法、装置及电子设备 | |
CN115421785B (zh) | 应用程序的移植处理方法、装置和介质 | |
CN113377400A (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 |