在开源库中弃用警告?

时间:2014-09-02 01:46:33

标签: ios objective-c clang deprecated

我目前正在更新库,对于iOS 7.0及更高版本的用户,不推荐使用某种方法。

我已经实现了以下逻辑以使用正确的方法:

if (SYSTEM_VERSION_LESS_THAN(@"7.0")) {
    //Use old deprecated method 
} else {
    //Use the new method supported in 7.0
}

如果我在if语句中使用以下内容来消除警告,并且用户在他们的应用程序中发送此代码,他们的应用程序将被拒绝还是可以的?

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
//old deprecated method 
#pragma clang diagnostic pop

1 个答案:

答案 0 :(得分:1)

要直接回答您的问题,在Apple取消对API的支持之前,他们不会拒绝在应用中使用它。


小心修改第三方库。根据许可证修改开源有法律含义。

尽可能修改编译第三方代码的构建系统。例如,如果我的源文件直接包含在我的项目中,那么我将仅针对这些文件禁止所需的警告。

  • Project Navigator 中选择项目节点。
  • 选择 Build Phases 标题。
  • 展开编译源部分。
  • 编译器标志中为开源文件设置-Wdeprecated-declarations