iOS App安装包瘦身

最后更新时间:2017.7.21

背景

最近的一个小项目,打包出来的ipa包高达90.8MB,这是我始料未及的,于是动了心思为它瘦身。

安装包瘦身

资源优化

资源包括图片、音视频文件、配置文件、字体包等。

删除无用资源及重复资源

无用资源指资源在工程文件中,但是没有被代码引用。重复资源指文件内容一样,文件名可以不一样的资源。

  • 删除无用资源工具:LSUnusedResources
    • 勾选Ignore similar name防止误删
  • 删除重复资源工具:Gemini
    • 完全重复项可删,相似项看情况删除

一般来说工程管理的好的话,这两个是减少不了多少体积下来的。

资源压缩

资源压缩是一定要做的,可以缩小很多体积。

下载

将这些资源移到Web服务,App可以从Web服务中下载所需资源。

其他

  • 图片资源尽量放在Assets.xcassets中管理。

编译优化

  • Build Settings -> Optimization Level,Release设置为Fastest, Smallest
  • Build Settings -> Strip Debug Symbols During Copy设置为Yes
  • Build Settings -> Symbols Hidden by Default设置为Yes
  • Build Settings -> Dead Code Stripping 设置成 Yes
  • Build Settings -> Strip Linked Product设置为Yes
  • Build Settings -> Deployment Postprocessing设置为Yes
  • Build Settings -> Use Separate Strip设置为Yes

编译优化感觉减小的并不多。

可执行文件优化

待研究

参考资料

App Thinning

Reducing the size of my App

On-Demand Resources Essentials

Build Setting Reference

xcode build settings for debug symbol

iOS IPA file size - xcode-archive vs. xcodebuild command

Xcode中和symbols有关的几个设置

iOS可执行文件瘦身方法

iOS APP安装包瘦身实践

为自己的 APP 瘦身

iOS微信安装包瘦身

iOS9-by-Tutorials-学习笔记四:APP-瘦身