iOS 11推送通知:如何在收到推送通知后立即访问它?

时间:2019-01-04 07:22:21

标签: ios apple-push-notifications swift4 ios11

当应用程序脱颖而出时,借助

 public func userNotificationCenter(_ center: UNUserNotificationCenter,
                                        willPresent notification: UNNotification,
                                        withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void)

此方法可以从

获取推送通知的有效负载
notification.request.content

但是当应用程序处于后台时,我们如何在收到通知后立即访问有效负载?

如果没有,有时在Facebook上我们不会在通知中心看到通知,但是如果您打开应用程序,它们就会可用?

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

如果您想直接在应用程序中访问推送而不知道用户,那么您需要使用静默推送通知。

  

当您发送静默推送通知时,如果应用程序被挂起,则系统会在调用该方法之前唤醒或启动您的应用程序并将其置于后台运行状态,但是如果该应用程序被用户手动杀死,则不会唤醒。它们可以用于通知新内容的应用程序,而无需通知用户。该应用程序将在后台唤醒,而不是显示通知警报。

JSON payload for Silent Push notifications:

{
    "aps" = {
        "content-available" : 1,
        "sound" : ""
    };
    // You can add custom key-value pair here...
}

这是本教程的link