安装包大小优化主要是三个方面:资源、编译、可执行文件
1. 资源:
1.1 删除无用的图片资源,工具:LSUnusedResources
1.2 资源压缩
1.3 不常用资源改为下载
2. 编译优化:
目前可做的是bitcode。
3. 代码级别优化:
3.1 代码
3.1.1 取project里所有源码文件列表,遍历所有代码找出import列表,找出没被import过的文件进行清理
3.1.2 代码复用,去除重复代码
3.2 静态库分析:
3.2.1 ar命令列出静态库包含的.o文件,会在当前路径下列出所有的.o文件。对.a中的所有.o文件进行遍历,如果在可执行文件中没有命中该.o,则说明改.o文件为冗余文件。最后把所有的冗余文件按照大小进行排序即可。
3.3 安装包分析优化
基于LinkMap完成,使用LinkMap文件对可执行文件安装包进行分析
3.3.1 Object files
3.3.2 Sections
3.3.3 Symbols
3.4 功能模块使用动态库(负面影响:会增加启动时间)