小游戏目前所有分包总大小限制不超过20M,首包大小限制不超过4M。精简首包为小游戏启动最为重要的手段,因为很显然其大小会影响下载时长,对于首次冷启动的玩家的影响最大。因此,我们需要精简其内容:
1)使用资源压缩、文件合并(小文件合并,图集等)的方式降低资源占用量。
2)减少不必要的资源,通常只保留首屏依赖的少量资源。
对于代码量过大的项目,一方面由于小游戏包体大小限制需要分包,另一方面合理分包对于启动也有很重要的意义。因为如此做开发者就能减少启动时需要下载的内容,既可以是普通资源,也可以是代码。
开发者应该降低首屏的复杂度,既包含初始业务代码逻辑与资源。我们发现许多小游戏启动过慢的原因在于初始资源过于复杂,比如初始画面的资源需要从远程CDN获取,这对于网络状况较差的玩家会出现明显的黑屏闪烁,体验极为糟糕。因此常见的做法是降低首屏资源的复杂度,尽量将资源置于首包内。
所谓的尽快渲染,指的是缩短业务代码注入完成到首屏渲染指令的时间。因此除了前面提到的优化手段外,还可以:
1)减少初始代码大小,降低代码注入时间;
2)简化首屏逻辑,比如不依赖第三方引擎进行轻量渲染。