【发布时间】: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 - 警告 - 所有语言”类别有“无人看管的可用性”选项。它被设置为“否”。在我将其设置为是并重建项目后,我再次收到警告。谢谢!
标签: ios objective-c xcode