我刚刚将我的XCode升级到4.5并安装了SDK 6.0。 我发现SDK 5.0消失了,但我仍然可以下载回Iphone 5.0模拟器。是否兼容使用iOS SDK 6.0开发适用于iOS 5.1的应用
我只是想知道天气我可以使用SDK 6.0开发iOS 5.1的应用程序。 我已经在下面的图片中显示了配置。
我刚刚将我的XCode升级到4.5并安装了SDK 6.0。 我发现SDK 5.0消失了,但我仍然可以下载回Iphone 5.0模拟器。是否兼容使用iOS SDK 6.0开发适用于iOS 5.1的应用
我只是想知道天气我可以使用SDK 6.0开发iOS 5.1的应用程序。 我已经在下面的图片中显示了配置。
是的,任何iOS SDK都可以让你开发以前版本的操作系统。 例如,即使使用iOS6 SDK,您也可以开发iOS5。
您只需将“部署目标”设置设置为5.1。
然后,您可以:在iOS5.1可用
欲了解更多信息和配置和示例情况的详细说明,我强烈建议苹果文档在读的SDK Compatibility Guide。
例如,如果你想提供一键分享到社交网络的东西,你可能要使用的Social.framework,但是这一个是仅适用于iOS6的。因此,你可以提出这个功能对于iOS6的用户和警报iOS5的用户,他们需要更新他们的iPhone到iOS6的使用这个特定的功能:
// Always test the availability of a class/method/... to use
// instead of comparing the system version or whatever other method, see doc
if ([SLComposeViewController class])
{
// Only true if the class exists, so the framework is available we can use the class
SLComposeViewController* composer = [composeViewControllerForServiceType:SLServiceTypeFacebook];
// ... then present the composer, etc and handle everything to manage this
} else {
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"Sharing unavailable"
message:@"You need to upgrade to iOS6 to be able to use this feature!"
delegate:nil
cancelButtonTitle:nil
otherButtonTitles:@"OK, will do!"];
[alert show];
[alert release];
}
然后简单的薄弱环节Social.framework(改变“必需”,以如果将框架添加到链接器构建阶段,则为“可选”),如文档中详细介绍的那样。
是的,你仍然可以创建的iOS 5与iOS 6的SDK兼容的应用程序。您必须相应地设置部署目标(如您所做的那样),而不是使用任何iOS 6功能。
非常详细和全面的答案:D我会读它。感谢:D 但我想知道为什么在Target和Project中有两个独立的部署配置。 – code4j
出于与每个其他构建设置相同的原因。例如,如果您的项目生成应用程序或库的“简单”版本(例如,使用#if!LIGHTVERSION /#endif条件来停用代码的某些部分),这可能会很有用,这将与5.0兼容。和相同应用程序的“完整”版本,其中将包含更多功能,这些功能仅与iOS 6.0兼容。在这种情况下,让您的“LightApp”目标使用iOS5的部署目标并且您的“FullApp”目标使用iOS6的Dep目标是有意义的。 _这只是一个例子;)_ – AliSoftware
非常好的解释,非常感谢:) – code4j