1.前言
http://home.51.com/1995494247/diary/wxitem/98405.html
在小游戏中,会首先下载你提交的完整游戏包,再运行 game.js 来启动游戏。所谓完整游戏包,
也就是开发者在微信开发者工具中所导入的资源,不管你是否需要这些资源,在玩家打开你的小
游戏时,都会被完整下载。所以为了首场景加载的体验,我们应该尽可能减小自己的小游戏包体,
将可以按需加载的资源,放在远程服务器上,用脚本进行加载。
下面是具体的小游戏包体方面的限制:
小游戏的包内体积不能够超过 4mb,包含所有代码和资源,额外的资源必须通过网络请求下载;
对于小游戏包内资源,小游戏环境内并不是按需加载的,而是一次性加载所有包内资源,然后再启动页面;
不可以从远程服务器下载脚本文件。
对于从远程服务器下载的文件,小游戏环境没有浏览器的缓存以及过期更新机制。
微信内将小游戏的文件存储空间按照用户和游戏来划分。
上面的文件系统接口,都是在这个文件沙盒环境中执行的,所有的文件目录也是相对于沙盒环境
的,所以我们不用担心不同小游戏或者不同用户之间的文件冲突。
而资源的加载流程如下:
检查资源是否在小游戏包内
不存在则查询本地缓存资源
如果没有缓存就从远程服务器下载
下载后保存到小游戏应用缓存内供再次访问时使用(按照资源相对路径保存)
Cocos Creator 打包的小游戏版本中微信提供了一个 wxDownloader 对象,用户可以给它设置
REMOTE_SERVER_ROOT 属性。
只要用户保证 REMOTE_SERVER