有没有办法暂停一个实例的重复通知?

时间:2019-04-26 19:56:42

标签: ios swift swift3 push-notification apple-push-notifications

我希望能够暂停一次定期通知,并且需要触发一次,我希望它能够触发。我知道removeAllPendingNotifications。但是不确定这样做是否成功,因为似乎可以完全删除它。你有什么想法?

2 个答案:

答案 0 :(得分:0)

您可以使用getPendingNotificationRequests并选择需要取消的标识符,然后将其传递给removePendingNotificationRequests(withIdentifiers: [String])

UNUserNotificationCenter.current().getPendingNotificationRequests { (reqs) in
   var ids =  [String]()
   reqs.forEach {
       if $0.identifier == "someId" {
          ids.append($0.identifier)
       }
   }
   UNUserNotificationCenter.current().removePendingNotificationRequests(withIdentifiers:ids)
}

`

答案 1 :(得分:0)

我的解决方案是使用上面的代码删除当天的通知,或者只知道标识符,然后删除待处理的通知标识符。然后将通知添加回去,但第二天。

i.e例如,一个具有重复任务但不希望收到已完成任务的通知的待办事项应用程序。

此stackoverflow作为代码:Scheduling local notifications to repeat daily from tomorrow in Swift