2

支持大量设备的 iOS 应用程序需要针对至少两个不同的平台进行编译:armv7 和 arm64。从构建过程来看,生成的 IPA 文件看起来基本上包含应用程序的两个完整版本,一个为每个平台编译。我希望 App Store 足够聪明,可以将这两个版本重新打包到两个单独的下载中,以便在下载期间仅将实际需要的版本发送到特定设备并安装在特定设备上。但看看 iTunes Connect,情况似乎并非如此。事实上,事情变得更糟:

  • 我为我的应用上传的 IPA 文件在我的计算机上是 16.8MB。
  • 在 iTunes Connect 中的“构建详细信息”下,“压缩文件大小”与这些 16.8MB 匹配
  • 但是,在“App Store 文件大小”下,“下载大小”被列为 36.8MB!!!
  • 而且,更糟糕的是,“安装大小”为 48.6MB!

太疯狂了!好的,我可以理解为什么“安装大小”大于“压缩文件大小”,但为什么巨大的“下载大小”???下载后在设备上解压不是更好吗?但我离题了...

iTunes Connect 似乎支持为不同的设备上传多个版本的应用程序。至少“App Store 文件大小”列表包含一个可以按设备显示多个此类版本的表格:

在此处输入图像描述

是否可以以某种方式构建和上传多个设备/平台特定版本的应用程序以减少每个版本的“下载大小”和“安装大小”,而不是只有一个“通用”版本?

额外问题:如果可能话,我如何在 RoboVM 中做到这一点?:)

附带说明:Android 上完全相同的应用程序,包括相同的图形和音频资产以及几乎相同的代码库,只有 6.0MB!但这可能是 RoboVM 引入的必要膨胀。我仍然需要研究如何减少这种情况......

4

2 回答 2

1

您可以使用作为 iOS 9 的一部分引入的App Thinning技术来实现这一点。App Thinning有 3 个主要方面:

  1. 应用切片
  2. 按需资源
  3. 位码

对于您的情况,您可以探索 App 切片和 Bitcode。

于 2016-02-17T20:30:38.150 回答
1

@RP 是正确的。当您上传 Bitcode 构建时,Apple 使用称为 Slicing 的 App Thinning 技术来创建您正在谈论的内容。

有关详细信息,请参阅应用分发指南

于 2016-02-17T19:06:18.600 回答