2013-10-02 200 views
6

我有一个需要iOS 6.1 SDK的项目,我已经升级到XCode5并且没有在Build Settings - > Base SDKs中看到iOS 6.1 SDK。我有早期的SDK单独保存并尝试将其复制粘贴到/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs目录中。但是它不会显示在Build settings - > Base SDKS中。我如何在Xcode 5中使用多个SDK?Xcode - 在XCode 5上使用多个SDK

+0

当我这样做时,它确实会显示给我。我认为你已经重新启动Xcode? –

+0

[可以在Xcode 5上安装iOS 6 SDK吗?](http://stackoverflow.com/questions/18423896/is-it-possible-to-install-ios-6-sdk-on-xcode -5) – Adam

+2

请确保您重新启动XCode,并且在某些情况下您需要注销/登录。 – Adam

回答

7

而不是直接复制粘贴,你应该使用符号链接,以避免各的XCode更新先前版本的SDK中删除..

1.Open终端并转到下面的SDK目录如下图所示

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs 

2.在将来的XCode更新之后,在文档或其他不会被删除的文档或其他目录中粘贴SDK 6.1或您想要的早期SDK。一旦将SDK放入该目录中,请使用以下命令创建符号链接。 (为简单起见,我已经把SDK 6.1中的文档目录)

sudo ln -s /Users/.../Documents/iPhoneOS6.1.sdk . 

注意:不要忘记添加一个空格和该命令后一个点。

1

如果你想使用以前的SDK与xCode 5,只需将以前的SDK复制到内容 - >开发人员 - > patforms-> iPhoneOS.platform 之后,重新启动xCode。确保你打开xCode5内容并在那里粘贴。

+1

重新启动的伎俩。但由于它具有未来升级的解决方案,所以在上面标记答案。谢谢。 –

4

在从已删除的答案评论,你说:

使用7.0 SDK引起各种奇怪的渲染问题在我的iOS7的应用程序,我没有时间来修复立即

我的理解是这里的问题,但我不得不说我同意trojanfoe,最好的做法是确实应该使用最新的SDK,但也可以随意支持任何以前的iOS版本,您的业务需求决定。因此,理想情况下,应该:

  1. 设置应用程序是什么的iOS的最早版本,你需要支持的最小部署目标:

    project target

  2. 显然编写代码支持iOS版本的范围从应用程序的最低“部署目标”到最新的iOS版本。这将涉及在iOS应用程序编程指南,即Supporting Multiple Versions of iOS所列技术通常谱:

    • 可能不是你的最早的部署目标支持框架的弱链接;

    • 运行时检查是否存在类;

    • 针对respondsToSelector的运行时检查,这些方法不适用于您支持的所有iOS版本;

  3. 然后,如果你想测试在模拟器上进行早期的IOS版本,在方案菜单,选择目标IOS版本:

    scheme

    显然,你会想以测试仍然运行旧iOS版本的物理设备(以及显然最新的iOS版本)。但使用模拟器是一种快速的方式,通过对照早期iOS版本的步伐运行应用程序,并确保您保持向后兼容性。

我理解你对这种方法的担忧,我明白这可能不适合你,但是我觉得不得不概述我认为是什么“最佳实践”。