【发布时间】:2016-08-10 12:56:06
【问题描述】:
我正在开发一个接收推送通知的 Ionic 2 应用程序。它必须接收静默背景通知,这意味着通知在系统通知区域中不可见。相反,当应用程序打开时,通知会发送到应用程序,然后它会处理接收到的数据。它可以正常工作,只是它只接收应用关闭时发送的最后一条通知。
可能是缺少 GCM 消息配置。
预期行为
接收多个后台静默推送通知。
实际行为
只接收最后一个后台推送静默通知。
重现场景(包括但不限于)
重现步骤平台和版本在应用关闭时发送两条或更多条无声后台消息。 打开应用程序。 on receive 只收到最后一个通知 听众。
(Android) 什么设备供应商Android 5.1.1/6.0
Cordova CLI 版本和cordova 平台版本谷歌
插件版本cordova --version 6.2.0 科尔多瓦
平台版本android 5.1.1
样本推送数据负载cordova 插件版本 | grep phonegap-plugin-push 1.7.4
{
"delay_while_idle": true,
"priority": "high",
"data": {
"content-available": "1",
"notId": Date.now(),
"silenttitle": 'some title',
"silentmessage": 'some message'
}
}
我如何才能收到发送到我的应用程序的所有静默通知?
【问题讨论】:
-
您如何检查是否收到消息?您是否期望有日志消息?另外,如果您发送 3 条消息而只收到最后一条,会发生什么情况?
-
是的。我实现了一个通知监听器。当我打开应用程序时,它只接收并记录应用程序关闭时发送的最后一条静默消息。如果应用程序打开,我会收到所有无声消息。它还将消息保存在数据库中并向用户显示。
-
我不确定从 ionic 到 GCM 的最终有效负载是什么样的,但是如果优先级很高,则应始终将数据消息传递到设备。我认为您需要一位离子专家来解决这个问题。
标签: android background push-notification google-cloud-messaging silentpush