我想我明白你问什么,答案是否定的:iOS的模拟器被命名为他们模拟硬件和iOS的版本,它们运行;例如iPhone 5s(7.1)。
Xcode 6仅附带iOS 8 SDK。这就是“Base SDK”(SDKROOT)。您可以将其视为“最佳编译目标”或“最佳支持版本” - 这是您编译的SDK版本。 “部署目标”(IPHONEOS_DEPLOYMENT_TARGET)定义您支持的iOS支持版本的最低。随着您的应用程序的成熟以及两者之间的距离的扩大,您需要对受支持的功能进行更多,更多的运行时检测,或者处理API差异,例如,较新的平台首选较新的调用,而较旧的平台则不存在。
针对(基地SDK)7.1编译的应用程序将在iOS 8.0设备上运行。您可以将其视为“iOS 7模式”。一个更好的例子是从iOS6移动到7 - iOS6.1上编译的应用程序“基础SDK”在iOS7设备上运行,但它们看起来像旧的UI风格。当他们被编译对iOS7.x“基础SDK”,他们看起来适合iOS6或7.
我有一个应用程序,我支持作为“基本SDK”7.1此刻,我设法复制旧的7.1 SDK并针对它进行编译。老实说,它比它的价值更麻烦,恕我直言。如果你仍然有Xcode 5,并且目前只需要7.1,那么你可能只是想使用它。鉴于iOS 8.0已经发布,并且如果您的应用程序是新的,那么您可能根本不需要担心这一点 - 您可能只想确保您支持iOS 7.x,这就是AOK。
鉴于(对于例如)具有7.0部署目标和8.0碱SDK应用程序,任何兼容性问题是你来处理。有些方法可能会有不同的表现(尽管Apple努力维护API兼容性),其他方法将被弃用或者不同。文档在阐明差异和弃用方面做得很好。
你是什么意思“拉一个SDK的早期版本”? – rmaddy 2014-10-01 16:00:54
为上述问题添加了示例。 – rynmrtn 2014-10-01 16:55:32