现状
我们现在的微链App随着业务的拓展,版本不断的迭代,产生不少代码的冗余和无用重复的资源,导致 ipa在不断变大;所以用点方法减少ipa的大小,
先来看看这张网上的思维导图
可执行文件优化
iOS APP编译后,除了一些资源文件,剩下的就是一个可执行文件,有时候项目大了,引入的库多了,可执行文件很大,想知道这个可执行文件的构成是怎样,里面的内容都是些什么,哪些库占用空间较高,可以用以下方法勘察:
- 1.去除未使用的类,一个比较节省时间的工具 WHC_Scan 可以比较初略的搜索出未用的类,但最终还需要去xcode人工处理这些类是否在用。
-
2.XCode开启编译选项Write Link Map FileXCode -> Project -> Build Settings -> 搜map -> 把Write Link Map File选项设为yes,并指定好linkMap的存储位置
-
3.编译后,到编译目录里找到该txt文件,文件名和路径就是上述的Path to Link Map File位于~/Library/Developer/Xcode/DerivedData/XXX-eumsvrzbvgfofvbfsoqokmjprvuh/Build/Intermediates/XXX.build/Debug-iphoneos/XXX.build/
找到XXX-LinkMap-normal-arm64.txt 打开,以微链为例如下图:
本地资源瘦身优化
- 1 现在应该没有APP需要支持iPhone4以下的机型了,所以1X的图片可以全部删掉。3X的图片是保留还是删掉看具体情况;
- 2 通过LSUnusedResources扫描出来,不过要注意的是可能会有误伤,该工具是全匹配,一些拼接名字来使用的图片要注意手动剔除。
一些音频、视频和多余的plist文件以及readme文件什么的目测只能肉眼扫描了 - 3 imageoptim是一款基于Mac的图像“瘦身”软件,内置有6种压缩算法,通过删除图片部分无用的EXIF等信息来减小PNG、JPEG和GIF图片的大小。ImageOptim合并了OptiPNG、PNGCrush、AdvanceComp、PNGOUT、Jpegoptim+Jpegtran和Gifsicle等几个工具,旨在为设计师提供最好的优化效果。在最新发布的1.4.4版本中,ImageOptim改进了文件在文件列表中的拖拽、复制、粘贴功能。文/Andy__M(简书作者)原文链接:http://www.jianshu.com/p/a72d03e92c80著作权归作者所有。