在离子应用中未接收FCM报文数据



我有一个简单的Ionic实现(Android(来接收来自FCM的消息。 从 Firebase 控制台发送消息时,系统会收到通知并显示提醒,但不会显示消息数据。

这是代码(app.component.ts(:

constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen, public fcm: FCM, private alertCtrl: AlertController) {
this.fcm.subscribeToTopic('all');
platform.ready().then(() => {
this.fcm.getToken().then(token => {
console.log(token);
let alert = this.alertCtrl.create({
title: '¡New token!',
message: token,
buttons: [
{
text: 'Cancel',
role: 'cancel',
handler: () => {
console.log('Cancel');
}
},
{
text: 'OK',
handler: () => {
console.log('OK');
this.navCtrl.push('DetailPage');
}
}
]
});
alert.present();
});
this.fcm.onNotification().subscribe(data => {
alert('message received');
if(data.wasTapped) {
console.log(data);
console.info("Received in background");
} else {
//  console.log(data);
console.info("Received in foreground");
}; 
});

例如,当消息从 Firebase 控制台发送时:

  • 留言文本:这是一个测试!
  • 可选标签:新消息。

应用程序中的警报("消息已收到"(显示,但控制台.log(data(输出到 fcm.onNotification((.subscribe(( 中是:

> {wasTapped: false}
{"wasTapped": false}

如何获取消息数据?知道吗? 谢谢。

要使数据包含信息,您必须从服务器发送此类信息

{"message":{ 
"token":"bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", 
"notification":{ "title":"Portugal vs.Denmark", "body": 
"great match!" },
"data" : { "Nick" : "Mario", "Room" : "PortugalVSDenmark" } } }

其中 message.data 是您要发送的数据输出

相关内容

  • 没有找到相关文章

最新更新