我将离子应用程序与插件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 ???)
但没有任何效果。
有人可以解决这个问题吗?
答案 0 :(得分:0)
根据插件的Readme:
注意:如果推送有效内容包含可用内容:1,则您的 通知事件处理程序已被调用。由您决定 处理双重事件。
因此,当您启动该应用程序时,该事件已被调用,并且在重新打开该应用程序时不会再次看到该事件。
我几乎可以肯定,根据设计,从图标而不是通知本身打开应用程序时,不会触发您的推送事件。