3.8可以单独给Bundle打包,是不是可以代替传统的热更新了。

自从Cocos支持Bundle后一直有个疑惑它和传统的热更新有什么区别,看似差不多又不能很好替代传统的热更新,同时存在吧好像又有点冲突,希望牛人或官方解下惑,有没有最佳实践方案。

很多用法,热更新只是其中之一

bundle 模块化了整个项目,顺便解决了资源索引文件太大的问题(因为分段了)

代码也可以分段下载了

可以给游戏做 MOD 机制

可以分高低清资源分别打包

可以多语言,每个语言一个 bundle 按需加载

Bundle最突出的特点 按模块下载

当 bundle 这个东西出来的时候就有人用来热更了,只是还有一些人一直不愿意学习新知识

对,我之前做那种大厅很多子游戏的就这样搞的

当然有区别

  1. bundle适合有子游戏/模块这类的更新,如果用官方热更,要全部下载。
  2. 热更适用范围更广,因为他可以热更掉一切除main.js外的资源(针对原生而言的资源,比如3.x打包出来的data)。

所以:

  1. 如果更新子游戏/模块(主包也是一个模块),推荐可以用bundle
  2. 如果有改动引擎代码(js层)等,推荐使用热更
  3. 综合上面两点最好
  4. 如果改动是原生层引擎的代码,那上面两者都不适合。

6666,在理。