Xcode 不再显示@available 警告
Posted
技术标签:
【中文标题】Xcode 不再显示@available 警告【英文标题】:Xcode not showing @available warnings anymore 【发布时间】:2021-06-28 11:57:12 【问题描述】:Xcode 不再对应用程序在所有支持的 ios 版本上不可用的属性或方法发出警告。这对我来说是一个严重的问题,可能会导致某些 iOS 版本出现错误或应用崩溃。
例如,[NSDate now]
方法仅适用于 iOS 13 及更高版本。在 iOS 12 设备上使用此方法会导致崩溃。我的应用程序项目的当前 iOS 部署目标设置为 iOS 12.0,并且该应用程序也支持 iOS 12 以上的所有版本。但由于某种原因,如果我使用不可用的方法或属性,我不会再收到警告在 iOS 12 上且仅在上述版本上。
我使用的是 Xcode 12.5。我也尝试过使用 Xcode 12.4 和 Xcode 13 Beta,但它是一样的。这是项目的问题吗?
【问题讨论】:
在一个新项目上,你能重现这个问题吗?如果没有,请检查Build Settings
,那里有一些警告标志管理。检查工作和非工作之间是否存在差异。或者你有什么地方#pragma clang diagnostic ignored
?哪个可能没有完成pop
?
构建设置中的“Apple Clang - 警告 - 所有语言”类别有“无人看管的可用性”选项。它被设置为“否”。在我将其设置为是并重建项目后,我再次收到警告。谢谢!
【参考方案1】:
前往Build Settings
,您可以在搜索栏搜索Unguarded availability
,或在Apple Clang - Warnings - All Languages
部分找到。
将值设置为Yes
【讨论】:
以上是关于Xcode 不再显示@available 警告的主要内容,如果未能解决你的问题,请参考以下文章
用户创建的警告在 XCode 7.1 中不再起作用。有替代方案吗? [复制]
iPhone真机运行App提示“不再可用“(No Longer Available)的原因及解决