- 打包时,对代码和资源进行混淆、压缩
- 使用Lint删除冗余资源
- 采用合适的图片编码格式,没必要都是高清
- 使用WebP图片格式
- 剔除无用so文件,整理出so文件维护列表,减少约2M
- 剔除无用资源文件,通过gradle自动检测,和代码优化对齐(但是会存在循环引用, 需要人为参与)
- 引入AndResGuard , 混淆资源文件路径和文件名称, 大幅减少了resources.arsc 索引文件的体积, 减少2M
- 仅支持armeabi-v7a一种CPU ABI指令集(兼容运行 x86, x86_64, arm64-v8a), 以后不在支持 armeabi(市场占有率几乎为0), 减少约2.5M
- 图片相似度检测算法(采用感知哈希算法 dHash), 找出图片目录中所有相同的图片(海明距离 = 0 , 此处的海明距离可以理解为相似程度, 值越小越相似), 减少约1.5M
- 压缩图片, 采用ImageOptim, 有损压缩70%
- 优化代码混淆 , 将之前未混淆和混淆力度不够的组件, 尽量混淆
- RN资源预加载 , 节约约1M, capa项目移除无用滤镜文件 , 感谢两个team做出的贡献