cocos 官方提供的热更新方案还是比较完善了,该有的工具都有,搞懂各个模块如何调用,就能够方便快捷得实现lua热更
主要搞清楚如下几个问题
1. AssertManagerEx 框架
具体的下载逻辑和更新流程(见大图)
2. 如果用脚本生成资源表
GenHotUpdate.py
version_info.json
3. 如何通过脚本预编并且打包lua脚本
(1) 分拆代码framework (cocos层)、base(底层支持) 、 game(业务层)
(2) 加密并且生成zip包
(3) LuaLoadChunksFromZIP 用法
4. 通过ftp工具自动上传到服务器
TODO 额外优化点:
1. 如果区分强制更新和非强制更新
2. 游戏进行时更新
最后附上AssetManagerEx的流程图,少年们,只能帮你到这了!
参考文献
http://www.cocos2d-lua.org/doc/hotupdate/index.md
https://my.oschina.net/SunLightJuly/blog/180639