【发布时间】:2015-12-08 15:46:07
【问题描述】:
我有一个 Swift 类,它与具有不同部署目标的多个目标相关联,主项目具有 iOS 7 最低要求,并且有一个针对 iOS 8 目标的扩展。
现在当我编译项目时,编译器会在这行代码上抛出警告:
if #available(iOS 8.0, *) { ... }
“对 'iOSApplicationExtension' 的不必要检查;最小部署目标确保保护始终为真”
我检查了构建设置选项,发现没有关闭快速警告的开关。
我尝试通过这一行单独定义 iOSApplicationExtension 版本目标但没有成功:
if #available(iOS 8.0, iOSApplicationExtension 8.0, *) { ... }
有没有办法抑制这个烦人的消息?
【问题讨论】:
-
看到这个链接可能对你有帮助forums.developer.apple.com/thread/15030
-
扩展的最低部署目标很可能是 iOS 8。这意味着
#available(iOS 8.0, 0)将始终为真,即没有必要。 -
@ILikeTau 应用扩展仅适用于 iOS 8+。这就是我这样做的原因。
-
是的,但是你的部署目标是一样的,所以你不需要
if。 -
@ILikeTau 我的主应用程序最低要求是 iOS 7,扩展是 iOS8。他们都使用相同的文件/类。所以我必须检查主应用程序的版本。不能省略。
标签: ios swift swift2 suppress-warnings ios-extensions