我正在使用 UNUserNotificationCenter 实现新通知。但我需要保持它向后兼容,因此我到处检查:
if #available(iOS 10.0, *) { ... }
else { ... }
这在 iOS10 中似乎运行良好。为了能够使用 UNUserNotificationCenter 框架,我必须导入:
import NotificationCenter
但是它使iOS9.3 崩溃,因为它不知道它是什么。
这是一个编译时操作,而不是运行时操作 - 所以这意味着我不能对导入设置条件。如果我创建一个单独的类,并把
@available(iOS 10.0, *)
class ....
在类实现之前,导入也发生了。
我应该如何解决这个问题?
最佳答案
尝试导航到 Build Phases->Link Binary with Libraries 并添加 NotificationCenter 并将状态设置为“可选”而不是“必需”。
关于xcode - 在编译时检查 iOS10 或更低版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38916135/