微信小游戏bundle远程包热更疑问

版本:3.8.2
问题:远程资源资源包热更失败,加载index.md5.js失败。
接口:assetmgr.loadBundle(name,{“version”:md5})

代码逻辑是要加载index.mdk.js和config.mdk.json,但bundle.md5.js加载的是在小游戏底包src/bundle-scripts/bundleName/index.md5.js下

这个index.md5.js这个文件修改必须更新微信底包,而config.md5.js文件则是在cdn服务器上
,我不知道是我配置问题还是什么问题,引擎加载这样写代码这样写就热更不了bundle的config配置了。

const version = options.version || downloader.bundleVers[bundleName];
let count = 0;
const config = `${url}/config.${version ? `${version}.` : ''}json`;
let out: IConfigOption | null = null;
let error: Error | null = null;
downloadJson(config, options, (err, response): void => {
    error = err || error;
    out = response as IConfigOption;
    if (out) { out.base = `${url}/`; }
    if (++count === 2) {
        onComplete(error, out);
    }
});

const jspath = `${url}/index.${version ? `${version}.` : ''}js`;
downloadScript(jspath, options, (err): void => {
    error = err || error;
    if (++count === 2) {
        onComplete(error, out);
    }
});

看微信端的engine-adapter.js和上面是一个机制

我理解的要实现原承包热更原承包机制是加载/index.底包md5.js和config.md5.js。
现在这种每次热更bundle下的资源,也都要重新提交

问就是微信小游戏不支持热更(

cocos打包时无法保证bundle中不依赖js 所以一定会生成一个js(

bundle内全部资源都不依赖js,纯更资源的话 改改代码绕过config.md5.js的加载呗

1赞

我改了效果可以,但我觉得应该有个机制纯资源包的吧,方便开发,难道开发这个微信还不允许?