XCode设置,以查看在以前的OS版本上无效的代码

时间:2014-01-30 11:24:50

标签: ios objective-c xcode

我已经专门为iOS7编写了一个应用程序,现在正试图让它适用于iOS6。

我真的很喜欢一个设置来启用警告,突出显示在iOS6上无效的代码行。即任何只能在iOS7上运行的代码调用。

这样我就可以在调试过程中捕获它们之前立即识别出我需要注意的任何代码行。

这甚至存在吗?

3 个答案:

答案 0 :(得分:1)

有两种方法可以解决这个问题。

  1. 使用MJGAvailability,一个标题文件中的下拉文件,如果选择器“太新”,它会发出警告。
  2. 购买Delpoymate,它可以扫描您的Xcode项目并向您显示任何不兼容的电话。
  3. 如果您使用最新的Xcode,请使用此代码段:

    if ([self respondsToSelector:@selector(newSelector)]){
    #if __IPHONE_7_0
          [self newSelector];
    #endif
    } else {
          [self oldSelector];
    }
    

答案 1 :(得分:0)

无法获得警告显示,即使现在IDE如何处理它也会如下所示

if([myObject respondsToSelect:@selector(myiOS7SelectorOnly)]) {
    [myObject myiOS7SelectorOnly];
}

如果您在开发适用于iOS7的应用程序并且使用iOS7 API不再使用的弃用方法它会给您一个警告而不是其他方式您将不得不等待它转身并崩溃并抛出unrecognised selector例外。

答案 2 :(得分:0)

在某些时候我安装了2个Xcode - Xcode 4和Xcode 5. Xcode 4没有ios7的API,它显示了所有不兼容性。 但是我不知道你现在在哪里可以找到XCode4并且它仍然会在ios7代码中显示错误吗? 至少你可以试试这种方式。