在演示之前取消通知

时间:2018-01-04 12:57:23

标签: ios swift uilocalnotification nsnotificationcenter

是否有可能在提交本地通知之前进行简短的评估过程?

根据评估结果,我会取消/删除可能不必要的通知。

1 个答案:

答案 0 :(得分:0)

是的。请注意提及:

  

是否可以在之前进行简短的评估过程   正在显示本地通知

表示通知状态为待定

所以你应该做的就是调用removePendingNotificationRequests(withIdentifiers:)并将通知标识符传递给你想要它/它们被移除的通知标识符。

你可以像这样实现它:

UNUserNotificationCenter.current().removePendingNotificationRequests(withIdentifiers: ["notificationID"])

那应该可以胜任。

请注意,它需要identifiers作为字符串数组,即使您只需删除一个通知,也需要传递包含一个字符串的数组。

显然,“notificationID”是您在注册时使用的通知的使用标识符(创建UNNotificationRequest时):

// ...
let request = UNNotificationRequest(identifier: "notificationID", content: content, trigger: trigger)
UNUserNotificationCenter.current().add(request)