【问题标题】:iOS 11 apps only from July 2018仅从 2018 年 7 月开始的 iOS 11 应用程序
【发布时间】:2018-05-25 16:26:42
【问题描述】:

我正在制作一个应用程序,并且我已经与几个人谈过它。他们希望在应用商店发布后下载它。

我收到了一封电子邮件并研究了哪些状态的更改:

“从 2018 年 7 月开始,所有新的 iOS 应用程序和更新都提交到应用程序 商店必须使用 iOS 11 SDK 构建。”

与我交谈过的一些人拥有无法运行 iOS 11 的旧设备,我也无法在自己的手机上运行它(不过,我会在 iPad 上运行)。

因此,我想在 iOS 9 上发布,但在 7 月之前无法发布,所以我仍然可以发布该应用程序,并且与我交谈过的拥有旧设备的人可以下载它吗?

阅读后,您似乎可以将部署目标设置为低于“基础 SDK”。这是真的?如果 iOS 11 可以做 iOS 9 不能做的事情,这将如何工作?

因此,我要求澄清并回答上述 2 个问题。

【问题讨论】:

标签: ios xcode app-store


【解决方案1】:

该消息意味着您的应用必须使用 iOS 11 的 Base SDK 构建。这意味着您需要使用 Xcode 9。最好使用最新的工具。 Apple 一直在推动开发者前进。

但这并不妨碍您的应用支持较旧的 iOS 设备。如果您希望支持回 iOS 9,请将您的项目或目标的部署目标设置为 iOS 9.0(或您希望支持的任何旧版本)。

部署目标定义了您的应用支持的最旧 iOS 版本。 Base SDK 定义了您可以使用的最新 API。

诀窍是确保如果您在应用中使用较新的 API,则当应用在具有旧版本 iOS 的设备上运行时不得使用它。

有很多讨论涵盖了这方面的细节,但简而言之,在您设置的任何部署目标之后添加的任何 API 周围使用 #available

2018 年 7 月 5 日更新:

根据Supported Xcode and Application Loader versions 帮助页面,只有 iOS 应用和iOS 应用扩展需要Xcode 9。

【讨论】:

  • 针对旧版本的旧应用程序呢?它们会保留在应用商店中吗?
  • @Niroj 未更新的应用程序将保留在 App Store 中。但是,如果您更新应用以利用较新的设备,您的客户肯定会更开心。
猜你喜欢
  • 1970-01-01
  • 2019-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-20
相关资源
最近更新 更多