Ios 在Swift上推送通知

Ios 在Swift上推送通知,ios,swift,firebase,notifications,firebase-cloud-messaging,Ios,Swift,Firebase,Notifications,Firebase Cloud Messaging,我对Firebase通知有一个很大的问题; 我的问题是,我可以在后台模式和前台模式下接收通知,但如果我终止它,从ram中杀死它,我就什么也接收不到 我发现如果我对这个函数进行注释 func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { Messaging.messaging().

我对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"
}


我还想说,此通知应该是静默的

您必须在通知中添加可用内容:1,在应用程序被终止时获取推送通知。

您必须添加可用内容:1,在您的通知中,当应用程序被终止时获取推送通知。

当应用程序被终止时,将从操作系统处理通知,因此它需要一些特定的键来显示通知

考虑下面的例子:

{

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

  }, 
  "to": "firebase_TOKEN", 
  "priority": "high"
}
在这里,您需要用通知替换数据,还需要一个标题而不是msgTitle,msgBody将替换为body


看起来您的是一个android负载,无法与iOS一起工作。

当应用程序被终止时,通知将从操作系统处理,因此它需要一些特定的键来显示通知

考虑下面的例子:

{

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

  }, 
  "to": "firebase_TOKEN", 
  "priority": "high"
}
在这里,您需要用通知替换数据,还需要一个标题而不是msgTitle,msgBody将替换为body


看起来你的是一个android负载,它不适用于iOS。

它适用于app killed,但在app进入后台时不起作用它适用于app killed,但当应用程序进入后台时不起作用这是苹果的方式,你不能改变它。我的观点是,当应用程序被关闭或锁定屏幕时,它不会显示在你的有效负载上。@FrancescoDestino你可以接受工作答案。:我现在可以给你一个加号,我现在不想结束答案:当然可以这是苹果的方式,你们不能改变它。我的观点是你们的有效载荷不会显示在锁屏上,或者当应用程序被关闭时。@FrancescoDestino你们可以接受工作答案..:我现在可以给你一个加号,我现在不想结束答案:当然可以