【问题标题】:Are arbitrary iOS deployment targets allowed?是否允许任意 iOS 部署目标?
【发布时间】:2014-04-07 11:00:40
【问题描述】:

例如,如果我有一个 iOS 应用程序需要在 iOS 7.0.3 中引入的修复,我是否可以将部署目标设置为 7.0.3 并将其提交到应用商店?

我找不到任何关于它的权威文档,而且 Xcode 在我设置、构建或存档时似乎没有抱怨,但我认识的人没有人这样做或知道它是否被允许。

注意:我知道 Xcode 仅在下拉菜单中显示次要版本,但您可以在文本字段中填写任意版本。

我正在寻找:

  • Apple 文档说明允许或不允许以补丁版本为目标。
  • (最近)提交针对补丁版本的应用的个人经验。
  • 如果允许以补丁版本为目标,在我将部署目标设置为 7.0.3 的具体示例中,我是否正确理解我应该将基础 SDK 设置为 7.0.0?

【问题讨论】:

  • 您能否为 iOS
  • 是的,但这是一种任意的假设情况,所以我不是在寻找解决方法,而是寻找确切问题的答案。

标签: ios xcode deployment xcode5 settings


【解决方案1】:

您可以设置次要修订号(所谓的补丁)。

当您填充文本框 according to this documentation 时,它会设置变量 MinimumOSVersion

当您构建应用程序时,您的部署目标会反映在应用程序的 Info.plist 文件中的 MinimumOSVersion 条目中。对于 iOS 应用,App Store 使用 MinimumOSVersion 条目来指示 iOS 版本要求。

所以如果你去to the documentation of this variable,你会发现:

MinimumOSVersion(字符串 - iOS)。当您构建 iOS 应用程序时,Xcode 使用项目的 iOS 部署目标设置来设置 MinimumOSVersion 键的值。不要在 Info.plist 文件中自己指定这个键;它是系统编写的密钥。当您将应用发布到 App Store 时,应用商店会根据此密钥指示您的应用可以在哪些 iOS 版本上运行。 相当于 OS X 中的 LSMinimumSystemVersion 键

最低操作系统版本 “最低系统版本” 不使用。请改用“LSMinimumSystemVersion”。

(我想 XCode 会为您填写它,并准确说明您的目标是 iOS。)

然后,如果您继续遵循文档,您将到达to the reference of LSMinimumSystemVersion,这是准确的:

LSMinimumSystemVersion (String - OS X) 表示运行此应用所需的最低 OS X 版本。 此字符串的格式必须为 n.n.n,其中 n 是一个数字。第一个数字是系统的主要版本号。第二个和第三个数字是次要版本号。例如,要支持 OS X v10.4 及更高版本,您可以将此键的值设置为“10.4.0”。

因此您可以指定一个次要修订号,根据文档the MinimumOSVersion entry is used by the App Store to indicate the iOS release requirement. 它应该可以工作。

对于您的第三个问题,没有 7.0.3 iOS SDK,因此您应该使用 7.0 SDK 或 7.1 SDK(如果可用)。 Since 1st February, you can't use prior version of the SDK.

但要回答您的问题(我认为),您可以使用更高版本的 SDK 并等于您的目标 iOS 版本。因此,如果您以 6.1 为目标,则可以使用 7.0 SDK。而且如果你的目标是 7.0.3 就可以使用 7.0SDK(既然是,那么最终 7.0.x 就这么平等了)。

我没有亲身经历,但我很确定 Apple 尊重参考和文档中所说的内容 :)

【讨论】:

  • 谢谢,这看起来像是我确实缺少的正确文档。我们将尝试发布,完成后我会更新。
  • 我承认不容易找到它;)
猜你喜欢
  • 1970-01-01
  • 2017-05-07
  • 2011-08-01
  • 1970-01-01
  • 2016-11-13
  • 2018-09-05
  • 2018-12-07
  • 2017-11-03
相关资源
最近更新 更多