今天我们来一起来说说热更新,谈起热更新,大家都觉得很难,都去找官方的热更新的解决方案,然后对着一步一步搞,原理还是不懂, 今天小编就带你来完整的讲解一下热更新的原理,搞懂原理,做热更新可以自己做,也可以自己修改,比如大厅与子游戏的模式。 这个原理经过测试,可以适用js, Lua等多种脚本语言。

1: 热更新准备活动

H5游戏不需要热更新,因为本身就是从服务器下载的,而只有Native开发里面需要热更新。

运行时动态加载的语言脚本才可以实现热更新,例如,js , Lua等;

每个native 的app 都有一个写的目录,可以用来放资源和代码; 这个cocos creator fileUtils都有对应的接口;

每个脚本语言都有一个searchPath,运行时根据搜索路径到这些路径下来装载文件。fileUtils 也有searchPath, 资源文件加载的时候,也是从searchPath里面的路径开始寻找资源。

2: 增量下载系统:

增量指的是客户端版本与服务器版本有差异的内容,每次更新,只更新客户端与服务器的差异,来节省流量和下载时间,所以我们做增量下载系统的时候,资源包(代码+资源)要做类似的设计:

(1)  资源列表, 记录了版本号, 记录了这个版本每个文件的一些信息,路径, MD5值,等信息;

(2)  完整的资源包;

第一次打包客户端的时候,也会带上这个当前客户端的包的资源列表。

客户端增量更新逻辑:  客户端先读取客户端当前最新资源列表(先到下载路径下找,再到包里找), 找到后和服务器上的比对, 根据md5值和客户端列表里缺的文件,得到一个下载更新列表, 然后根据更新列表来从服务器下载文件。最后将服务器的资源列表更新到本地,下次启动就不用再更新了。附上资源列表的结构截图:

3: 使用最新源码和资源:

在启动脚本的时候,添加搜索路径,把热更新下载的路径,添加到前面,这样,系统搜索资源的时候,都从下载路径开始搜索,

这样你更新的数据和文件就被优先加载进来,实现到热更新,附上启动脚本的修改截图:

游戏开发热更新必懂3件事相关推荐

  1. 热更新_热更新必懂3件事

    今天我们来一起来说说热更新,谈起热更新,大家都觉得很难,都去找官方的热更新的解决方案,然后对着一步一步搞,原理还是不懂, 今天小编就带你来完整的讲解一下热更新的原理,搞懂原理,做热更新可以自己做,也可 ...

  2. 35岁前必做10件事 让你少奋斗8年挣足钱

    35岁前必做10件事 让你少奋斗8年挣足钱(转)中财网 (2010-03-27 16:04:01) 转载 标签: 就业 求职 乘数 钱经 李彦宏 美国 杂谈 分类:转载 男人.女人都要过三十五岁这堵墙 ...

  3. 国内投资者投资港股的四种方法和港股必知25件事

    国内投资者投资港股的四种方法和港股必知25件事 2015年04月09日 07:41 来源:凤凰财经 class="miniseebox js_weixin_iframe" fram ...

  4. Kali安装之后必做20件事

    Kali安装之后必做20件事 第二版 原文地址: http://blog.niuti.org/post/380915_5a5b269# 一,更换比较快的软件源 修改sources.list文件(su) ...

  5. 淘宝运营 淘宝运营必做五件事 淘宝运营的工作方向

    做为一名合格的淘宝运营工作者,每天需要做些什么呢,我们这边就来分析一下. 淘宝运营每日必做5件事: 1.跟踪店铺数据 数据是运营的方向,那我们需要看那些数据呢?店铺方面:浏览量.访客数.店铺收藏量.拍 ...

  6. 必读!速卖通欧盟VAT税改政策解读!必做6件事!

    欧盟VAT税改必做6件事! (1)及时获取IOSS号码 (2)ERP发货确保完成税改升级 (3)执行税改最新发货规则 (4)海外仓商家注册提交VAT信息 (5)海外仓商家定期税务申报 (6)合理维护售 ...

  7. 在东京大学感受_我们想在东京在线游戏展上看到的10件事

    在东京大学感受 The Tokyo Game Show will take place online this year, from Sept. 23–27, but there are still ...

  8. 手机被偷前必做两件事

    [转载:http://www.williamlong.info/archives/4765.html] 很多"专家"都曾经发过<手机被偷后必做的N件事>这类教程,比如: ...

  9. 关于git pull机制和游戏开发热更新思考

    前言 今天由于网速很慢,在git pull更新时我观看了git pull的日志,让我联想到和我现在从事的游戏开发中的热更热有一定的相似性,把思绪记录下来. ​ git pull 日志 使用tortoi ...

最新文章

  1. ultraMaskedEdit使用心得
  2. 【逆向工具】IDA使用5-( string、图形化与视图的切换、图形化显示反汇编地址、自动注释、标签使用)...
  3. java redisson_Java使用Redisson分布式锁实现原理
  4. 【华为云技术分享】漫谈LiteOS-端云互通组件-MQTT开发指南(上)
  5. 【opencv+python】下载安装教程
  6. lsqcurvefit拟合结果为复数_使用科学计算器计算复数与相量(提高篇)
  7. 项目1:交换机后台管理程序(待续1……)
  8. Could not find a version that satisfies the requirement PyQt5
  9. 计算一个文件下的所有视频总时长
  10. 毕设题目:Matlab智能算法TSP(旅行商)
  11. 服务器位置设置,服务器部署位置
  12. PMP/高项 项目立项管理
  13. Android 消息机制之深入学习MessageQueue
  14. 自动设置为兼容模式html,什么是兼容模式?
  15. linux mysqldump 备份所有数据库,mysqldump导出所有数据库
  16. 小学计算机教师证面试题目,2019下半年小学信息技术教师资格面试真题完整版...
  17. USB 虚拟串口简介
  18. tf.constant(常量)
  19. Java-JUC-彻底搞懂JUC
  20. 如何激励自己专注学习

热门文章

  1. 【已解决】JMeter:报400 Bad Request的各种情况以及处理方法
  2. android开发与程序员的副业
  3. 富满电子鸿蒙系统,东吴证券--电子行业周报:HarmonyOS2.0助力AIOT生态体系发展
  4. 文件格式转换音频转MP3(aac转MP3......) java
  5. mysql bad gateway_502 bad gateway nginx 的错误的解决方案
  6. 跨境电商利润奇高?为什么说Starday对新手友好?
  7. 多功能图片转换器webp2jpg-online
  8. 哈尔滨工业大学 计算机系统 大作业 22春
  9. navigationBar相关的设置
  10. Spring IoC详解