怎么样减少iOS应用程序的大小

Build Settings

编译选项

将build setting中的 Optimization Level 设置为 Fastest, Smallest [-Os] ; 将build setting 中的 Strip Debug Symbols During Copy 设置为 YES (COPY_PHASE_STRIP = YES),这样可以减小编译出二进制文件的尺寸。这里提到的这些设置在Xcode工程中对于 Release 的配置是默认的。

警告:这些设置会让你的程序很难debug。在一般开发环境build中不建议这样设置,

Target针对较少的CPUs

默认情况下,Xcode工程都配置为:对程序指定的特定CPU类型做优化处理,以生成相对于的可执行文件。不同的硬件,将运行不同的可执行代码。虽然这样优化后的程序,只能针对某些设备运行,但是这大大减小可执行程序的大小。

要想只设定特定类型的CPUs,可以修改build setting中的 Architectures ,将其从 Standard $(ARCHS_STANDARD) 修改为你希望支持的列表中对应的特定类型CPU。有效的CPU名称列在 Valid Architectures (VALID_ARCHS) build setting中。请不要修改 Valid Architectures 设置项,最好由Xcode管理。

Assets

对应用程序做一个完整性检查

利用 Inspecting Your App 中介绍的流程,对.app bundle做一个全面的检查,以了解那些是真正需要用到的。在程序中,经常会包含一些额外的文件,例如readme之类的,这些从来都不会被用到。

将数据从代码中剥离出来

将所有的资源(例如很长的字符串)从代码中剥离出来,并存入外部文件,这样会减小最终文件下载的大小,因为这些文件的压缩效果更好。(参考 iOS App Store Specific Considerations 中的完整介绍。)

Image Assets

尽量使用8-bit图片

使用8-bit的PNG图片,比32-bit的图片能减少4倍的压缩率。由于8-bit的图片支持最多256种不同的颜色,所以8-bit的图片一般只应该用于一小部分的颜色图片。例如灰度图片最好使用8-bit。

针对32-bit的图片尽量使用高压缩的比率

利用Adobe Photoshop的 Save For Web 可以减小JPEG和PNG的图片大小。在Xcode中,默认情况下,会自动的使用 pngcrush 来压缩.png图片。

Audio Assets

音频的压缩

参考WWDC中的 Audio Development for Games ,里面介绍了如何有效的处理音频。常规来说,我们要使用AAC或MP3来压缩音频,并且可以尝试降低一下音频的比特率。有时候44.1khz的采样是没有必要的,稍微低一点的比特率也不会降低音频的质量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值