iOS IPA瘦身记录
2019-06-27 本文已影响0人
宋鸿康iOS
前言 IPA大小其实蛮影响用户的体验,痛下决心做了一次优化
最近在公司做了个IPA
的瘦身,本来没有多大的项目,IPA
竟然达到惊人的91M
,想想都可怕,后续这么迭代下去,难道IPA
体积要超过微信等知名应用
- 图片资源、视频资源、音频资源的删除
删除重复的图片 LSUnusedResources,用于检索项目中没有用到的图片,音视频的检索没有找到合适的工具 - 压缩过于大的图片
排查图片的工程中,尽然发现了好多1M多以上的图片,美工给的图片大部分都没有压缩,手机端没有必要要那么高清的图片,这里有个不错的压缩图片的工具 TinyPNG
,GIF的压缩工具暂时没有发现 - 没有用的到的类,方法,属性,变量的删除
用的AppCode,工具收费,有30天的免费使用权限
菜单栏->code->Inspect Code ...
图片
左下角有非常清楚的描述,把多余不用到的文件方法类等等删除 - 查看APP中各个文件的大小
LinkMap文件是Xcode产生可执行文件的同时生成的链接信息,用来描述可执行文件的构造成分,包括代码段(TEXT)和数据段(DATA)的分布情况。只要设置Project->Build Settings->Write Link Map File为YES,build完后就可以在设置的路径看到LinkMap文件了。Path to Link Map File 可以指定路径,也可以用默认的。。这个路径就是生产LinMap的路径
图片
得到了LinkMap文件,就可以查看各个文件占用多少内存了---进行合理的优化接口
查看LinkMap文件,咱们可以用一个第三方工具查看,LinkMap,具体用法可以看文档说明,这里展示一个linkmap
图片
项目的代码其实没有占用多大,只有不到30M,其余71M全部是资源文件。哈哈哈,瘦身APP对于我来说,更多的是在优化资源,代码其实占用不到多少
经过我的一顿猛操作,IPA来到73M,瘦身了18M。
补充说明。生成的IPA包,解压后得到一个Assets.car文件,这个文件里面放的全部是资源图片资源,可以用carTool得到所有的图片,然后在看看图片有没有没有压缩漏掉啥的