在Swift上推送通知

问题描述 投票:1回答:2

我对Firebase通知有一个非常大的问题;我的问题是我可以在后台模式和前台模式下接收通知,但是如果我终止它(从ram中杀死它)我什么都收不到。

我发现如果我评论这个功能

func application(_ application: UIApplication,
                 didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
    Messaging.messaging().apnsToken = deviceToken
}

当我在应用程序终止后重新打开应用程序时,我可以收到通知,但我无法像之前那样在后台获得通知。

有任何方法可以解决它,因为我的应用程序应该每次都收到通知:后台,前台以及何时从终止状态重新打开应用程序

以下是我的通知JSON的示例:

{
"content_available": true,
"priority": "high",
"data": {
    "priority": "SILENT",
    "target": "contact",
    "msgBody": "",
    "msgTitle": ""
},
"to": "firebase_TOKEN"

}

我还想说这个通知应该是沉默的

ios swift firebase notifications firebase-cloud-messaging
2个回答
2
投票

当应用程序被杀死时,将通过操作系统处理通知,因此需要一些特定的键来显示通知。

比如下面的例子:

{

"content_available": true, 
  "notification": {
    "title":  "has sent you a message", 
    "sound": "default", 
    "body": "Hi", 
    "badge": 6

  }, 
  "to": "firebase_TOKEN", 
  "priority": "high"
}

在这里你需要用"data"替换"notification",你还需要一个"title"而不是"msgTitle""msgBody"将被替换为"body"

看起来你的是一个Android有效载荷,不适用于iOS。


2
投票

您必须在通知中添加"Content-available" : "1",才能在应用程序被杀时获得推送通知。

© www.soinside.com 2019 - 2024. All rights reserved.