静默通知-无需单击通知即可在后台接收通知

时间:2018-08-02 15:02:15

标签: cordova firebase ionic-framework phonegap-plugin-push

我将离子应用程序与插件phonegap-plugin-push(v2.1.0)结合使用,以在Android和iOS设备上接收推送通知。

到目前为止,它正在工作。 当我的应用程序在后台并且发送通知时,该通知将作为系统通知发送到设备的系统托盘。 然后,当我单击系统通知时,它将显示在我的应用程序内

实际上,此事件侦听器将被触发:

this.pushObject.on('notification').subscribe(notification => {
     ....
});

但是,如果我单击系统通知,而是单击应用程序图标以打开我的应用程序,则通知将不会到达我的应用程序内部。因此,似乎未触发此事件侦听器。

我找到了可能使用finish-Method的解决方案:

this.pushObject.on('notification').subscribe(notification => {
     ....
     this.pushObject.finish(notification.additionalData.notId);
});

我还应该发送“ content_available”:“ 1”(适用于Android)和“ content_available”:1(适用于iOS),以及iOS的通知ID(notId)(仅适用于iOS ???)

但没有任何效果。

有人可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

根据插件的Readme

  

注意:如果推送有效内容包含可用内容:1,则您的   通知事件处理程序已被调用。由您决定   处理双重事件。

因此,当您启动该应用程序时,该事件已被调用,并且在重新打开该应用程序时不会再次看到该事件。

我几乎可以肯定,根据设计,从图标而不是通知本身打开应用程序时,不会触发您的推送事件。