# 克服逐渐增大的包体
## 一：清理无用依赖
开发过程中应有的良好习惯，但是对包体的缩减效果一般不大
## 二：将一些资源外挂下载
资源部分能下载就下载，尽量别放在包体内

举例：v164引入了机器学习模型，导致包体膨胀284.85%，在v165通过外挂模型下载的方式，使包体减少**29.4%**

效果 55.7MB -> 39MB
## 三：ABI分包
默认构建的通用包，包含了多个架构编译的原生库，当原生库的体积增大时，会导致通用包膨胀，通过ABI分割，构建多个架构的包体分发

举例：通过分割后只分发ARM64版本，v172仅为v171的**48.77%**

效果 40.8MB -> 20.9MB
## 四：增量更新
通过Bsdiff算法，开发者事先做好差分包，分发给用户，用户端带有合并算法，可以与自身进行合并更新

举例：v172版本发布时，伴随v171_to_v172的补丁包，仅为全量包的**15.15%**，具体大小因新旧版本差异而不同，**最小可达KB级**

效果 40.8MB -> 6.2MB
## 五：代码混淆
## 六：去除无用资源