从UNNotificationServiceExtension检查iOS应用程序状态[Swift]

时间:2018-02-07 10:10:56

标签: ios swift ios-extensions

我在iOS的Swift应用程序中使用UNNotificationServiceExtension,它运行正常。对于特殊情况,我需要知道当didReceive中的UNNotificationServiceExtension方法被调用时,我的应用是否正在运行。我尝试向UserDefaults写一个bool值,指示应用状态,该状态由AppDelegate事件修改,例如在调用applicationWillTerminate时将其设置为false,但有时app可以是在没有调用applicationWillTerminate的情况下被系统杀死,因此UserDefaults中的变量将指示该应用仍处于活动状态。是否有更好/更智能的方式从iOS UNNotificationServiceExtension到达主应用程序状态?

1 个答案:

答案 0 :(得分:-1)

如果您已在didReceive中实施/覆盖UNNotificationServiceExtension AppDelegate,那么您可以像这样进行检查

let state = UIApplication.shared.applicationState