我使用Firebase推送通知到设备令牌。当应用程序打开或在前台时,我可以很好地收到通知。但是当应用程序在当前任务上终止或清除应用程序时,我无法收到通知发送。
我已经尝试过在消息第一次工作时收到 aleardy。 但现在它不起作用时杀死应用程序。
-
代码接收通知:
class MyFirebaseMessagingService : FirebaseMessagingService() { override fun onMessageReceived(p0: RemoteMessage) { val data = p0!!.data Log.e("AAAAAAAAAAAAA: ","data 111111111111111111111111111111111111111111111111:" + data["key1"]) } }
-
发布发送通知数据: 发送至: https://fcm.googleapis.com/fcm/send
-
数据:
{ "to" : "token key", "data": { "key1" : "value1", "key2" : "value2", "other_key" : true } }
结果,对于应用程序正在打开,我可以很好地接收数据,但是当被杀死时,我无法接收数据。
如果要将数据发送到 https://fcm.googleapis.com/fcm/send 您正在使用旧版 HTTP 协议,如下所示
这在文档中不是很清楚。
在此协议中,要在应用程序处于后台或关闭时接收数据消息,您应该使用此有效负载:
{
"to" : "token key",
"data": {
"key1" : "value1",
"key2" : "value2",
"other_key" : true
},
"priority" : 10,
"time_to_live" : 60
}
首先以最高优先级 (10( 进行测试,然后根据需要降级。还可以根据您的需要在几秒钟内调整time_to_live。