应用瘦身
资源瘦身
删除无用图片的脚本: https://link.juejin.im/?target=https%3A%2F%2Fgithub.com%2Fexamplecode%2Funused-image . 扫出来厚记得在工程里全局搜索这个图片的名字确保不会被误杀
使用 SwiftGen 后, 因为资源的文件管理也会通过这个生成一个资源为难的 enum. 可以通过这个, 来整理对资源文件的管理结构, 减少出错和冗余的概率
https://link.juejin.im/?target=https%3A%2F%2Fgithub.com%2Fadrianlopezroche%2Ffdupes , 这个能扫描重来一模一样的图片, 但是不能辨别出相似的图片, 可以使用另一款工具来扫描相似图片. (暂时忘了叫啥)
对于超过10KB的大图,不管是webp格式还是jpg格式都比png小很多,png转换webp的工具可以采用:
安装
brew install webp
转换 webp
cwebp -q 75 bts-home-nocity@3x.png -o bts-home-nocity@3x.webp
cwebp可以控制有损压缩的比率。webp和jpg、png的比较可以参考https://link.juejin.im/?target=http%3A%2F%2Fblog.ibireme.com%2F2015%2F11%2F02%2Fmobile_image_benchmark%2F
或者使用批量转化工具在加入资源文件时就对不需要透明通道的图片进行转化处理
代码精简
发现重复代码的工具:
使用 AppCode 来扫描出没有使用的函数, 类 .etc
ref: iOS 瘦身实践
减少支持类型
当前有些机型已经没有必要去支持了, 可以通过设定不支持这些机型, 来减少打包的大小
打包缩小体积
提到, 单独使用OC会比混编要小
无用的东西清理掉, 部分资源从云端懒加载
pb使用Google官方版本(这个本来就应该, 有更通用的接口)