我在我的Ionic 3应用中使用Firebase云消息传递(cordova-plugin-fcm)。到目前为止,我可以在应用处于后台或前台时从Firebase接收推送通知。
在后台,我没有将数据导入应用程序。所以发生了什么:
这是我注册监听器的代码:
constructor(
platform: Platform,
private fcm : FCM
) { this.fcm.onNotification().subscribe(data => console.log(data)); }
如您所见,我直接在构造函数中订阅,但我也尝试了
platform.ready()
哪个也没有用。我还尝试在我的通知中发送特定密钥,例如"data":{"foo" : "bar"}
或"notification":{"foo" : "bar"}
或"message":{"foo" : "bar"}
。此方法应标记通知的实际有效负载,以告知OS服务中的预备用语将其传递给应用程序,但它们都没有帮助。
当应用程序未处于活动状态时,似乎数据不会传输到应用程序中。在线的所有解释都告诉我们如上所述订阅听众,只需检查data.wasTapped
属性即可。但是由于听众根本没有被召唤,所以此时我很无能为力。也许我应该尝试#34; phonegap-plugin-push"代替?