iOS 11应用程序仅从2018年7月开始

D-A*_* UK 1 xcode app-store ios

我正在制作一个应用程序,我已经和几个人谈过了这个问题.他们想在应用商店发布后下载它.

我收到了一封电子邮件,并研究了这些变化:

"从2018年7月开始,提交给App Store的所有新iOS应用和更新都必须使用iOS 11 SDK构建."

我曾经说过的一些人使用的旧设备无法运行iOS 11,我也无法在自己的手机上运行(不过我会在iPad上运行).

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

在进行一些阅读之后,您似乎可以将部署目标设置为低于"基本SDK".这是真的?如果iOS 11可以执行iOS 9无法做到的事情,这将如何工作?

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

rma*_*ddy 5

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

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

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

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

有很多讨论涉及到这方面的细节,但简而言之,使用#available在您设置的任何部署目标之后添加的任何API.

自2018年7月5日起更新:

根据支持的Xcode和Application Loader版本帮助页面,只有新的 iOS应用程序和iOS应用程序扩展需要Xcode 9 .