【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 小时前
CyberRT(apollo) IPC(shm)通信包重复/丢包 bug 及解决方案
c++·bug
Urf_read6 小时前
改BUG:Mock测试的时候,when失效
bug
賢8436 小时前
如何保证bug在改完之后不会引起新bug
bug
永康李1 天前
Pandas:从一个DataFrame中直接索引赋值到另一个索引位置出错的Bug及其解决方案
python·bug·pandas
NPE~1 天前
Bug:Goland debug失效详细解决步骤【合集】
go·bug·goland·dlv失效
Urf_read2 天前
改BUG:远程连接redis失败,可能是防火墙的问题
java·redis·python·bug
Tlog嵌入式3 天前
单片机常见bug记录(长期更新)
单片机·嵌入式硬件·bug
会发光的猪。4 天前
el-input无法输入0.0001的小数,自动转换为0在vue3中的bug
前端·javascript·vue.js·elementui·bug
shandianchengzi4 天前
【BUG】LLM|Ubuntu 用 ollama 部署 DeepSeek 但没输出,llama 有输出
ubuntu·llm·bug·llama·ollama·deepseek
抽象具象化5 天前
Bug日记:Linux中systemctl restart network失败问题,网络故障
linux·运维·bug