XCode 4目标部署目标与项目部署目标

时间:2011-08-18 09:21:54

标签: iphone xcode

请原谅我的无知,但是“目标”下的部署目标字段与“项目”下的部署目标之间的XCode 4有什么区别?

如果我的项目部署目标是3.2,而我的iOS应用程序目标是4.0,会发生什么?反之亦然?

3 个答案:

答案 0 :(得分:52)

目标设置会覆盖项目设置。项目设置适用于尚未覆盖其设置的所有目标。

答案 1 :(得分:4)

更新: 正如先生所澄清的。 @Edward,“项目”级别的版本用作默认,而“目标”级别的版本 覆盖 >默认值。

实际上是用Apple docs编写的:

“目标设置会覆盖项目设置。”

Base SDK与此无关。

原始帖子:

查看link form Apple docs ...看起来当您将版本设置为“目标”级别时,您指定了用户运行应用程序所需的最低版本。< / p>

另一方面,通过将版本设置为“项目”级别,您可以指定在开发时可以使用的SDK。因此,如果某个API仅在最新版本中可用,则会出现编译器错误,通知您必须以不同的方式(可能使用#available@available处理丢失的API的行为。)

enter image description here

这就是我对上图的理解:

  • 您可以使用主要版本中的所有API,
  • 只有安装了至少“部署目标”版本的用户才能下载应用程序
  • 您最多可以使用API​​直到“基本SDK”版本
  • 项目中无法使用“ Base SDK”版本以上的API

答案 2 :(得分:1)

“项目”页面上的iOS部署目标是项目中所有目标的默认设置。每个项目上的iOS部署目标都是可选的项目级替代。

要设置从项目继承的目标,不能使用“常规→部署信息”部分。而是转到“构建设置→部署”,然后为“ iOS部署目标”选择“其他...”,然后输入$(inherited)