如何在通知服务扩展中检测主机应用程序状态?

时间:2018-06-05 14:51:34

标签: ios unnotificationrequest unnotificationserviceextension

通知服务扩展程序会下载媒体文件,将其显示为UNNotification的附件。但是,当主机应用程序位于前台时,不会显示任何通知,因此通知扩展程序无需下载媒体文件。

如何根据应用状态阻止下载?

1 个答案:

答案 0 :(得分:0)

首先从ios 10开始,您可以使用UNUserNotificationCenterDelegate委托方法

来展示它
func userNotificationCenter(_ center: UNUserNotificationCenter,
                            willPresent notification: UNNotification,
                            withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {

      completionHandler([.alert, .sound])


}

第二,它可能很奇怪,但如果您的应用程序组已启用扩展程序,则可以与userDefaults共享应用程序状态