【问题标题】:iOS: scheduling notifications appear at original time and scheduled timeiOS:计划通知出现在原始时间和计划时间
【发布时间】:2019-05-07 23:52:56
【问题描述】:

我有一个关于推送通知的问题。我们正在实现用户能够安排通知的功能。我已经设法让调度工作。问题是他们仍然收到原始通知。在这个函数UNUserNotificationCenter 中接收上午11 点进来的消息,当应用程序在前台时,将显示通知:UNNotification。问题是如何调用UNUserNotificationCenter, willPresent notification: UNNotification 当应用在后台时

场景

通知应该在上午 11 点收到

问题

如果我将时间设置为下午 12 点 我在上午 11 点和下午 12 点收到通知

发送通知的正文如下所示

{
    "to" : "FCM Token",
 "notification" : {
     "body" : "Body of Your Notification",
     "title": "Title of Your Notification"
 }
}

【问题讨论】:

    标签: ios swift firebase push-notification


    【解决方案1】:

    这是因为原来的通知安排在晚上 11 点,您需要删除所有待处理的通知,然后安排一个:

    UNUserNotificationCenter.current().removeAllPendingNotificat‌​ionRequests()
    

    另外,请包括您的调度机制,我很想看看!

    【讨论】:

    • 在安排新的之前
    • 它没有用。当应用程序处于后台时仍会收到通知。我想要的结果是,即使应用程序在后台并发送了通知,首先它应该在用户指定的时间发送
    • @grace 请包括调度机制。有关系
    • 我有一个文本字段,用户可以在其中设置时间。我将时间保存在用户默认值中。在UNUserNotificationCenter这个方法中,会出现通知:UNNotification,我保存发送的通知,即正文和标题。然后我会检查用户之前的默认值是否包含值。如果是这样,我将使用保存的通知值创建一个本地通知。这在前台工作,但在后台它不做检查。
    猜你喜欢
    • 1970-01-01
    • 2014-03-18
    • 2021-04-11
    • 1970-01-01
    • 2023-03-21
    • 2014-08-27
    • 1970-01-01
    • 1970-01-01
    • 2012-02-18
    相关资源
    最近更新 更多