-
Creator 版本:3.8.3
-
目标平台: 微信小游戏
-
之前哪个版本是正常的:3.8.2
3.8.3微信小游戏远程更新AssetBundle失败,需要清缓存才能正常更新(真机和微信开发者工具都有这个问题),打包时已经使用MD5缓存。现在只能回退到3.8.2版本
Creator 版本:3.8.3
目标平台: 微信小游戏
之前哪个版本是正常的:3.8.2
3.8.3微信小游戏远程更新AssetBundle失败,需要清缓存才能正常更新(真机和微信开发者工具都有这个问题),打包时已经使用MD5缓存。现在只能回退到3.8.2版本
补充一下,我是将一些UI做成了prefab,然后打包成远程包,放在oss上面,以往的cocos版本只要UI有改动,打包后将资源放在oss上面,微信小游戏上的UI也就更新了,但是更新到cocos3.8.3后,UI就不能自动更新了,要手动清缓存,也就是在手机微信里将小游戏删除,重新打开游戏,才能下载到新的UI
文档链接:
https://docs.cocos.com/creator/manual/zh/advanced-topics/hot-update-manager.html?h=热更新
官方在热更新一章节里边也说到了,热更完就得重启的.js需要跑在一个干净的环境.
所以目前的方案这边都是热更完就直接cc.game.restart
不知楼下有没有更好的方案~~~ 
其实也不算是热更新,我现在每个游戏版本和AssetsBundle一一对应,也就是每次更新UI,我都会重新打包游戏并且提交到微信,之前的cocos都能正常更新到最新版的UI,但是自从换了3.8.3,要手动清除缓存,才能下载到最新的UI
你好,感谢反馈。
请问,更新失败,是否有什么错误日志?还有能定位到是哪个文件应该更新,最终导致没有更新吗?
已私信,望解决,谢了
我也有这个问题,勾选了md5缓存之后,每次构建之后把 remote 上传到 oss 之后,在微信开发者工具里面运行会报错,文件找不到。

重启微信开发者工具这个报错就消失了。
再次复现的方式就是->构建打包->上传 remote 文件夹到 oss->微信工具清除全部缓存->然后就会报错
请提供一下你加载 bundle 的代码,我需要知道你是否有在 UI bundle 更新之后,更换 loadBundle 时使用的 version,并且是否有销毁旧的 bundle 缓存资源
你这个报错是主场景分包里面的 index.js 找不到了,不知道你是否错误删除了它的资源。
没有加额外的参数,已经用了 md5 缓存了,理论上是变成了index[md5].js了吧?

这个是初始化场景的代码,没有其他的了,只有这个

还有一个小问题想请教一下,我 loadbundle 之后想做一个进度条,然后我在 loadsence 里面去判断的 finished 和 total,但是通过日志发现,total 会变,这可咋整啊 。。。
我看你的 game.js 也是有是读取的正确的 web-adapter.js 路径,那可能是微信开发者工具那边读取的资源缓存是错误的,导致的。
你那边当出现问题时点击重新编译项目是否能解决?
我也遇到过,就是发现打包远程的,然后MD5不一样的时候,然后加载偶尔就会出现这种情况。
可不可以修改成所有的平台打包都是用同一个远程包,并且这个远程包是自己配置,自动控制更新不更新的。可以么?
assetManager.loadBundle('01_graphics', (err, bundle) => {
bundle.load('xxx');
});
这个方法加载远程资源包,跪求官方加一个进度回调。 因为有些包稍微大点,在那儿卡住不动,做一个假的进度条又太假了。
你好这是我的测试视频,没能复现你的问题。你要是方便的话可以今天让我远程你的电脑看看
好,可以,您看下周 1 可以么,加您个联系方式
我把我的联系方式发你私信了,你看下
有可选参数,可以获取进度回调
现在3.8.3 bundle压缩类型改为zip时,并设置为remote更新时,远程更新AssetBundle失败。但是3.8.2就没有这个问题。后续发现3.8.3打出的bundle的config文件名没有加上md5命名。建议快速修复该问题