一般分包这种做法,大多数都是麻将 扑克等app。
首先说下思路.这里采用的分包更新其实本质上就是将项目中的资源拆分成子模块,采用工具将整个工程生成热更文件并且对热更新文件进行分离,找出需要的子模块,生成单独的配置mainfest文件。在点击时候进行检测 更新 加载 完成后打开所对应的子模块。下面是大致的实现方式。
这里以麻将包为例子。
- 分离麻将代码,将有关于麻将的所有代码进行拆分。在项目中新建一个文件夹目录 如submodules(可能还有其他子模块 如poker等) 下面包含mahjong文件目录 如:
sumodules
mahjong
将有关于麻将的代码放这个目录下。并且定义一个文件,如mahjong.js
这里面有mahjong_res和mahjong_src 2个数组。存放着指向该路径下的所有*.js和资源文件。仅仅只限于麻将使用。 这样的目的在于当热更下来mahjong子模块的时候,通过该文件来加载关于麻将的代码和资源。需要说明的是,这里有关于麻将的代码里所涉及到的资源,如图片 必须拿到子模块路径下!
1.在cocosstudio工程中同样新建一个mahjong子目录,最好和上面的目录结构一致,因为最终打包 热更的时候都是脚本处理,方便分离。同样的目录结构 如:
submodules
mahjong