【Cocos】热更Bug回顾

1、热更包排序问题

cocos自作聪明,用无序字典存储,导致更新包会出现旧包覆盖新包的情况。由于已经上架App Store了,再提审有风险,只好写个工具生成更新包名,使包名即符合升序,又符合hash排序,即使hash之后仍旧是正确顺序的命名。

其实还有个方案:每次做新的更新包,把旧的更新包的文件也跟着替换一遍到最新,这样即使覆盖也都是本次要更新的新文件。由于这个会改动到已经更新的包,对测试和运营来说有风险,遂PASS

cpp 复制代码
struct DownloadUnit
{
    std::string srcUrl;
    std::string storagePath;
    std::string customId;
};

typedef std::unordered_map<std::string, DownloadUnit> DownloadUnits;

2、热更完毕卸载上次加载过的文件用于本次不重启即可生效。

相关推荐
IT二叔1 天前
Git Flow04-bug修改流程
git·bug
万粉变现经纪人2 天前
如何解决 pip install shapely 报错 GEOS C 库未找到 问题
c语言·开发语言·python·pycharm·bug·pandas·pip
cyforkk2 天前
前后端联调实战:解决业务异常被误判为成功的“幽灵 Bug”
bug·状态模式
li9056632803 天前
hanzi-writer-miniprogram Path2D问题以及Bug修复
微信小程序·bug
万粉变现经纪人3 天前
如何解决 pip install cx_Oracle 报错 未找到 Oracle Instant Client 问题
数据库·python·mysql·oracle·pycharm·bug·pip
ChoSeitaku4 天前
Git分支|创建分支|切换分支|合并分支|删除分支|合并冲突分支|分支策略|bug分支|强制删除分支
bug
Lxinccode5 天前
BUG(23) : node版claude code启动报错Failed to connect to api.anthropic.com: ETIMEDOUT
bug·claude·claude启动报错
buyulian5 天前
Bug防御体系:技术方案的优与劣
java·经验分享·bug·软件工程
川石课堂软件测试6 天前
接口测试需要注意的一些BUG
网络·数据库·python·单元测试·bug·压力测试·tornado
深念Y6 天前
记一个BUG:Trae里MongoDB和MySQL MCP不能共存
数据库·mysql·mongodb·ai·bug·agent·mcp