在Firebase通知中,当应用程序是后台时我收到了通知,但是当我打开没有通知的应用程序时,数据不会反映在IONIC android应用程序中。
当应用程序为前景时,数据会自动反映。
我也使用过cordova-plugin-messaging插件但是没有用。
我用过
FCMPlugin.onNotification( 功能(数据){
if(data.wasTapped){
console.log(data);
}else{
console.log(data);
}
},
function(msg){
console.log('onNotification callback successfully registered: ' + msg);
},
function(err){
console.log('Error registering onNotification callback: ' + err);
}
);
并且还使用了:
window.cordova.plugins.firebase.messaging.onMessage(function(data){
console.log(data);
});
但它适用于应用程序是前台和我们点击通知的时候..
我希望在应用为后台时检索数据,并且在应用打开时不点击通知。
感谢您的回答
答案 0 :(得分:0)
sendPushPayload( data );
Intent NotificationIntent = new Intent(this, FCMPluginActivity.class)
.addCategory(Intent.CATEGORY_LAUNCHER)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
for (String key : data.keySet()) {
NotificationIntent.putExtra(key, data.get(key).toString());
}
startActivity(NotificationIntent);
将上面的代码放在你的android原生文件(MyFirebaseMessagingService.java )
和cordova插件android (src ->android-> MyFirebaseMessagingService.java)
文件中,如果make上面改变意味着,app在后台你按下通知意味着应用程序会自动打开。