我已经安装了cordova-plugin-fcm,除了一件小事以外,一切正常。当应用程序处于后台/关闭状态并且从firebase发送推送通知时,会在设备中弹出通知。从托盘中单击该通知时,我的应用程序开始运行,但控件未进入fcm.onNotification()。
我在app.component.ts中的代码看起来像这样
fcm.onNotification().subscribe(data=>{
if(data.wasTapped){
console.log("Received in background");
console.log(data);
} else {
console.log("Received in foreground");
console.log(data);
};
});
答案 0 :(得分:9)
通知应该"click_action":"FCM_PLUGIN_ACTIVITY"
用于触发onNotification(),因此如果您从firebase控制台发送通知,使用http reqquest发送通知,请按Firebase Cloud Messaging HTTP Protocol documentation表单更多内容洞察力,我建议Postman这样做,它也是一个chrome插件。
您的代码应如下所示:
{
"notification":{
"title":"Notification title",
"body":"Notification body",
"sound":"default",
"click_action":"FCM_PLUGIN_ACTIVITY", //this is needed so the onNotification() fires when notification is tapped
"icon":"fcm_push_icon"
},
"data":{
"param1":"value1",
"param2":"value2"
},
"to":"/topics/topicExample"(or device token),
"priority":"high"
}
的引用:
这两个链接包含您需要的一切
祝你好运。