基础与活动与部署目标

Adi*_*Adi 25 iphone deployment settings submission

我知道这个问题的一部分是在几个变化中被问到的,但我想确保我做对了.

以下是我的假设和理解,如果在提交之前它们是正确的,我想知道.

我的应用程序假设所有操作系统都支持的功能,所以我应该:

  1. 将Active SDK设置为最新版本(当前为SDK 3.0).
  2. 将部署目标设置为我想要支持的较低级别 - iPhone 2.0及更高版本?
  3. Base SDK到底是什么用的?如果我选择Active SDK不同,我应该忽略它,我在哪里可以看到项目设置中的Active SDK?

最后一个问题 - 苹果允许选择iPhone OS 2.0作为部署目标吗?

提前致谢,

BTW - 这个问题的主要原因之一是因为在使用早期的SDK编译时,当这个动画被保存多次使用时,苹果似乎在释放UIImageView动画数组的内存时遇到了问题.这是用SDK 3.0修复的已知问题(通过简单地将UIImageView动画数组设置为nil)

fbr*_*eto 28

Base和Active SDK之间的区别在于前者是项目的默认SDK集,后者是您当前构建的SDK.因此,您的Active SDK可能是Base SDK,此时XCode将使用您为项目指定的SDK.

为了尽可能为最广泛的设备构建您的应用程序,您是对的:

  • 将Base SDK设置为最新的SDK(3.0,3.0.1)
  • 尽可能将部署目标设置为最早的SDK(2.0)

Apple确实允许您将iPhone 2.0指定为部署目标,但请记住在iPhone 2.0之后发布的任何API或框架,默认情况下您无法使用它们.有些技术可以使用以后的SDK中的功能,但它们并不重要.

  • 不要吝啬,但OP询问"Base SDK"和"部署目标".您使用"Active SDK"来表示"部署目标"吗?Apple使用术语"Base SDK"和"Deployment Target",我理解这意味着:MAX SDK ="Base SDK"和MIN SDK ="Deployment Target". (6认同)

cla*_*ox3 8

您应该将Base SDK构建设置设置为包含您打算使用的所有功能的最新SDK(通常是最新的可用SDK),并将"iPhone部署目标"构建设置设置为最早版本的OS你想要运行.

然后,您需要确保在运行时检查早期操作系统上可能不存在的任何功能.