编译不同XCode版本的错误

时间:2015-03-19 15:52:39

标签: ios iphone xcode compilation

我正在开发一个应该在iOS版本> = 7.0上运行的应用程序。我目前正在使用模拟器测试我的应用程序。一旦我切换到XCode 5以便在iOS 7上测试我的应用程序,我发现在评论我的代码时非常烦人。 是否有任何干净的直接方法可以避免所有头痛?是否有任何有用的宏允许指定何时编译代码和什么时候不?

2 个答案:

答案 0 :(得分:2)

下载中是否有iOS 7.1模拟器(Xcode>偏好设置>下载)?

答案 1 :(得分:0)

如果您打算针对缺少较新功能的较旧SDK版本编译相同的代码,则应使用Availability.h中的__IPHONE_OS_VERSION_MAX_ALLOWED宏。查看标题的文档注释,但缺点是:

#if __IPHONE_OS_VERSION_MAX_ALLOWED < 80000
    // Do fallback path that does not depend on iOS features
#elif __IPHONE_OS_VERSION_MIN_REQUIRED < 8000
    if (check for availability of new feature at runtime)
        // Use new feature
    else 
        // Do fallback path that does not depend on iOS features
#else
    // Use new feature unconditionally
#endif

您还可以从Xcode 6中下载iOS 7.1模拟器运行时并针对它运行您的应用程序(假设部署目标设置回7.1或更早版本)。