【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、热更完毕卸载上次加载过的文件用于本次不重启即可生效。

相关推荐
黑客思维者6 小时前
《我是如何用C语言写工控系统的漏洞和Bug》连载(1)内容大纲
c语言·bug·工控漏洞
川石教育14 小时前
软件测试中的Bug知识总结
软件测试·bug·压力测试·缺陷管理·bug分类
特立独行的猫a14 小时前
HarmonyOS应用开发之界面列表不刷新问题Bug排查记:从现象到解决完整记录
华为·bug·harmonyos·ui刷新
hfd199014 小时前
Bug 排查日记:一次曲折的技术解谜之旅
bug
As331001014 小时前
Bug 排查日记:技术难题的攻克之旅
bug
初级代码游戏2 天前
Git或TortoiseGit的小BUG(可解决):空库报错Could not get hash of ““
git·bug
Tisfy3 天前
MacOS - 记录MacOS发烫的好几天 - 幕后黑手竟然是
macos·bug
明月与玄武4 天前
为什么程序员总是发现不了自己的Bug?
bug·为什么程序员总是发现不了bug
油炸自行车4 天前
【Qt】bug排查笔记——QMetaObject::invokeMethod: No such method
c++·笔记·qt·bug
Direction_Wind5 天前
flinksql bug: Non-query expression encountered in illegal context
数据库·sql·bug