我正在研究GCM Push notificatios,我已经很好地管理了推送通知,我正在从服务器获得推送通知,但是当Android设备收到相同类型的通知时,新通知会重叠相同先前通知的所有数据。如何保存旧推送通知的数据?请建议我最好的方式
答案 0 :(得分:4)
好像你正在设置collapse_key
。如果您使用此设备并且接收设备在从服务器发送多条消息时处于脱机状态,则只有最后一条消息在重新联机时才会传送到设备。
在没有可选collapse_key
的情况下发送消息将导致接收设备上的所有消息。
答案 1 :(得分:2)
GCM payload具有collapse_key
属性。来自doc,它是
An arbitrary string (such as "Updates Available") that is used to collapse a group of like messages when the device is offline, so that only the last message gets sent to the client. This is intended to avoid sending too many messages to the phone when it comes back online
所以这是预期的行为,而collapse_key
与从服务器发送到GCM服务器的消息相同。
要解决您的问题,您可以为每封邮件更改collapse_key
(,如果您的应用需要,但这不是一个好方法,请记住 GCM允许最多GCM服务器在任何给定时间使用4个不同的折叠键。)