iOS App瘦身计划(Version 1.0)

1.编译器的优化级别 

Build Settings -> Optimization Level ,release版 选择 Fastest,Smallest 这个选项会开启那些不增加代码大小的全部优化,并让可执行文件尽可能小 (默认就是这个了)。

2.去除符号信息 

Strip Linked Product / Deployment Postprocessing / Symbols Hidden by Default 在release版本应该设为yes,可以去除不必要的调试符号。Symbols Hidden by Default会把所有符号都定义成”private extern”,详细信息见官方文档。(注:Cocoapods子工程 不可以设置 Symbols Hidden by Default)

这些选项目前都是XCode里release的默认选项,但旧版XCode生成的项目可能不是,可以检查一下。

3.资源优化

资源压缩(png有损/无损压缩 ,js/html压缩,音视频压缩)

去除无用资源

非必须资源按需下载On Demand Download

(注:图片 无损压缩几乎没有效果,因为 打包过程中 Xcode会把之前处理过的逆转回来)

4.对于纯OC项目

Cocoapods不要使用use_frameworks!如果使用会带来大约10%-25%的包体增大(可怕😭)。

Swift 和 OC 混编 编译阶段也会加入 一些Swift依赖库 大约增加 6MB。

尝试了以上步骤,我的App 成功 从 28MB -> 16MB

参考文献:

1. http://blog.cnbang.net/tech/2544/
2.http://blog.163.com/l1_jun/blog/static/1438638820169242493464/
3.http://stackoverflow.com/questions/5264449/why-is-my-app-5mb-larger-on-the-app-store

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 缩减iOS安装包大小是很多中大型APP都要做的事,一般首先会对资源文件下手,压缩图片/音频,去除不必要的资源。这些...
    buptwsg阅读 2,002评论 0 8
  • 不断的开发迭代,产品经理不断的添加需求,引入的资源文件几乎是只加不减,猛然回首,iOS包已经100多m,看来iOS...
    码农甲阅读 3,765评论 8 31
  • 缩减iOS安装包大小是很多中大型APP都要做的事,一般首先会对资源文件下手,压缩图片/音频,去除不必要的资源。这些...
    雨影阅读 735评论 0 0
  • 课时:12h(2天) 时间:9:00-12:00 13:30-16:30 课前准备:温馨提示、时间、地...
    王艺臻Pd阅读 232评论 0 0
  • 许久不写文字,终究还是生疏了。 80年代末生人,经历了QQ空间从兴盛到式微再到繁荣,见证了校内网到人人网的变迁及至...
    海溟阅读 140评论 0 0