我正在使用 react-native-firebase 来管理 React-native app 上的通知。 当应用程序关闭时,我尝试在后台处理 FCM 消息而不显示通知。
我正在使用 react-native-firebase 来管理 React-native 应用程序上的通知。 当我的应用关闭时,我尝试捕获 FCM 消息并唤醒我的应用而不显示任何通知,就像此处 https://rnfirebase.io/docs/v4.2.x/messaging/introduction#Data-only-messages 1 中所述。
在 React Native Firebase 文档中,他们说:
您需要将 FCM 邮件优先级指定为高,此功能才能正常工作。如果未设置此选项,则不会向应用授予启动后台消息处理程序的权限。
我必须在哪里指定此优先级?我不明白这是如何工作的。
编辑 1:我尝试在 FCM 消息上设置priority : "high"
,但它仍然不起作用。我有与此问题相关的相同问题:https://github.com/invertase/react-native-firebase/issues/500
优先级被视为特定于平台的配置。您可以为不同的平台设置不同的优先级。
例如,请看下面的示例: (FCM 文档中的消息优先级(
{
"message":{
"topic":"subscriber-updates",
"notification":{
"body" : "This week's edition is now available.",
"title" : "NewsMagazine.com",
},
"data" : {
"volume" : "3.21.15",
"contents" : "http://www.news-magazine.com/world-week/21659772"
},
"android":{
"priority":"normal"
},
"apns":{
"headers":{
"apns-priority":"5"
}
},
"webpush": {
"headers": {
"Urgency": "high"
}
}
}
}
使用 "priority":10 为我做了这个技巧。
curl -X POST --header "Authorization: key=<your_key>" --Header "Content-Type: application/json" https://fcm.googleapis.com/fcm/send -d {"data":{"body":"Test body from curl"},"registration_ids":["<reg_ids>"],"apns":{"headers":{"apns-priority":"10"}},"webpush":{"headers":{"Urgency": "high"}},"android":{"priority":"high"},"priority":10}