为什么在使用新的Iphone SDK安装新版本的xcode时会删除旧的SDK? 现在我们有了v4,我必须做些什么设置才能让应用程序仍然可以使用3.x?
由于
答案 0 :(得分:7)
将Base SDK设置为4.0,将Deployment Target设置为3.x.或者,在现代条件下,Base SDK to Latest和Deployment Target可满足您的需求。
答案 1 :(得分:7)
虽然'Zoul'最简洁地回答了这个问题,但我将尝试详细说明这两个设置,并指出一些有用的文件,这些文件将帮助其他新手。
基本SDK版本:这表示基于编译程序的SDK版本。这可以通过项目或目标的“构建设置”进行设置。你可以在你的代码中使用来自Apple的API代码 - 编译器将知道所有符号并编译而没有任何问题。
部署目标:这是您方面的声明,说明应在用户设备上安装以运行代码的最低iOS版本。此设置可在项目的“信息”部分和特定目标的“摘要”部分中找到。现在,重要的是要理解的是,如果您使用的是Apple的更高版本中引入的API代码,那么在具有旧版iOS的设备上,您的代码将无法自动运行。这些可以是Apple在更高版本中引入的新类/方法/框架。您必须通过编写必要的条件代码来确保并提供备用代码路径,以便为没有较新API的旧iOS版本优雅地降级。您可以自行处理版本不兼容问题。
有关此主题的Apple文档可在“SDK Compatibility Guide”中找到。
要了解不同iOS版本的更改,请参阅“What's new in iOS”。
“构建和运行应用程序”部分的“iOS Development Guide”中也讨论了此主题。请参阅“指定运行时环境”小节。
答案 2 :(得分:3)
如果您从Time Machine(以及更好!)等系统备份系统,则可以从位于/Developer/Platforms/iPhoneOS.platform/Developer/SDKs和/ Developer / Platforms /的备份中复制旧版SDK。 iPhoneSimulator.platform / Developer / SDKs - 然后只需重新启动XCode就可以了。
答案 3 :(得分:3)
如果在将部署目标设置为至少与所需SDK一样低之后仍有问题,则需要下载该SDK。幸运的是,Xcode也在这里帮助我们:
答案 4 :(得分:1)
3.2.3上一个测试版确实删除了所有其他SDK的原因,许多人尝试使用beta SDK开发的发布应用程序,这将不被接受。我猜通用汽车仍在做同样的事情
如果要开发4.0,3.2和3.0(加上3.0,3.1,3.1.2,3.1.3) 执行以下操作