包体大小优化

1.剔除掉不需要的模块

代码由引擎和业务逻辑代码组成,引擎占体积多;引擎优化非常简单,将没有用到的模块去掉,模块占体积多的模块能不用尽量不要使用;

业务逻辑代码一般没法修改,但要注意 95%以上的同学都会忽略: setting.js,setting.js 的大小是由resources里面的文件数量决定,非代码加载的资源,一定放出resources模块。

以下为引擎模块及说明,供参考:

模块

模块说明

大小

Core

必须

-

Canvas

必选,画布

-

Sprite

必选,精灵

-

Label

必选,文本控件

-

Audio cc.audioengine

单例对象,主要用来播放音频。

11k

AudioSource

音频源组件,可进行音频剪辑

2k

Action

行为动画

55k

Animation

动画

26k

Button

按钮

11k

Collider

碰撞

8k

Dynamic Atlas

动态合图/合批

5k

DragonBones

龙骨动画

234k

EditBox

输入框

21k

Graphics

绘画接口

21k

Geom Utils

检测3D物体碰撞的API(射线)

31k

Intersection

碰撞系统检测辅助类

2k

Layout

布局组件

12k

LabelEffect

文本特效( outline,shadow… )

2k

Mask

遮罩组件

8k

Mesh

网格

13k

MotionStreak

拖尾

4k

NodePool

对象池

0.7k

Native Socket

网络模块( XMLHttpRequest )加上这模块后 包体反倒降低了8byte

-8byte

Physics

物理模块

384.7k

PageView

页面视图容器

6.72k

PageViewIndicator

页面视图指示器组件

1.73k

ProgressBar

进度条

2.57k

ParticleSystem

粒子系统

59.6k

RichText

富文本

15.9k

RendererTexture

资源类型 可以用来截图 与 cc.Label有引用关系 推荐勾上

5k

Slider

滑条

3byte

ScrollBar

滚动条

3.85k

ScrollView

滚动容器

19.94k

SpineSkeleton

Spine动画

183k

StudioComponent CocosStudio

编辑器项目文件支持

555byte

Toggle CheckBox

单选勾组件

4.9k

TiledMap

显示TMX格式的地图

49.3k

VideoPlayer

视频组件

12.99k

Widget

UI布局组件( 这个比较常用 )

6.84k

WebView

内部页面交互视角

6.9k

3D

3D核心模块

35.144k

3DPrimitive

创建基础3D模型的顶点数据工具类

19k

cannon.js

开源的物理引擎,使用 JavaScript 开发并实现了比较全面的物理模拟功能

192k

Builtin

碰撞检测系统 的物理引擎。相对于其它的物理引擎,Builtin 没有物理模拟功能,但它的优势在于更小的包体以及较小的计算量

38k

3DParticle

3D粒子效果

193k

SafeArea

该组件会将所在节点的布局适配到 iPhone X 等异形屏手机的安全区域内,可适配 Android 和 iOS 设备,通常用于 UI 交互区域的顶层节点

906byte

2.减少资源大小

2.1图片资源

2.2音效资源

2.3字体库

注:本文出自smartad.xingyunsys.com,原始链接:Cocos试玩包体大小优化(转载请注明出处)