包体积瘦身

27 10月

包体积瘦身可以由易到难入手。

  • App Thinning
  • 图片优化
  • 文件优化

App Thinning

最简单的方式是使用苹果自带的App Thinning,在APP store下载时,会根据用户的手机设备下载不同体积的APP。例如APP有32位,64位不同芯片架构的版本,App包会包含多个芯片的指令集架构文件。但用户下载时显然不需要下载本手机芯片外的架构文件。还有图片,iphone6只会下载2x分辨率的图片,更新款的iphone只会下载3x分辨率的图片。你只需要在工程的Assets.xcassets里拖入不同分辨率的图片即可。

图片优化

删除已经不用的图片能让缩包效果立竿见影。在确认所有图片都需要用的前提下,可以将图片转成WebP格式。但WebP不是全能的,相比传统PNG格式它的CPU的解码和消耗更高,所以需要在性能和APP体积上做出取舍。

通常大图,例如超过100K时,可以考虑转成WebP。小于100K时,用TinyPNG压缩图片。

文件优化

APP包主要由资源文件(如图片)和可执行文件组成,所以下一步是优化文件。先找到并删除不类,方法,宏,可以使用AppCode来分析工程,当然分析出的结果需要人工二次审核,毕竟检查代码这种事工具不100%靠谱,不要误删。

也可以用LinkMap结合Mach-O找出不用的代码。

至于使用的代码,重构成本较高,想通过代码重构减少体积应该是上述方案都执行完后,最后考虑的事情。

发表评论

电子邮件地址不会被公开。 必填项已用*标注