6

按需资源 (iOS)

按需资源是您可以使用关键字标记并按标记分组请求的资源(例如图像和声音)。App Store 在 Apple 服务器上托管资源并为您管理下载。按需资源可实现更快的下载速度和更小的应用程序大小,从而改善首次启动体验。例如,游戏应用程序可能会将资源划分为游戏关卡,并仅在应用程序预期用户将移动到该级别时才请求下一个级别的资源。同样,只有当用户购买了相应的应用内购买时,应用才能请求应用内购买资源。

ODR 对某些应用程序很有用,但这个新功能的向后兼容机制是什么。老实说,一个应用程序只支持最新的 iOS 版本是非常罕见的。它总是最多返回 2 个版本。

我的理论是,也许旧版本会简单地忽略整个 ODR,让用户从商店下载完整的应用程序包。

有没有人有更多的信息可以澄清这一点?

4

2 回答 2

10

请参阅 Apple 关于App Thinning的文档中的此注释:

注意:对于 iOS 应用,最新的 iTunes 和运行 iOS 9.0 及更高版本的设备支持切片应用;否则,App Store 会向客户提供通用应用程序。

该文档不是 100% 清楚这如何影响 ODR,但它非常强烈地暗示:

  • 当 iOS 9 客户端从 App Store 下载您的应用程序时,iOS 将仅下载基本应用程序(针对设备进行适当切片),以及您包含在 Xcode 的初始安装标签中的资源。
  • 当 iOS 8 或更早版本的客户端获取您的应用程序时,iOS 将...

    在此处输入图像描述

    ...以及所有特定于 CPU 的二进制文件、所有特定于设备大小的 nib 等。

于 2015-07-30T18:39:54.147 回答
7

不幸的是,iOS 9 之前的部署目标似乎不支持 ODR:上传到 App Store 时,您将收到以下错误:

错误 ITMS-90510:“Info.plist 值无效。为键 MinimumOSVersion '8.0' 提供的值小于包含按需资源的应用程序所需的值 '9.0'。

话虽如此,Apple 似乎有可能在未来通过在 App Store 上实现这一点来允许这一点,因此请提交 Radars 以请求这一点。

于 2015-11-17T11:26:50.927 回答