【问题标题】:Receiving duplicate push notifications from Android gcm server [closed]从 Android gcm 服务器接收重复的推送通知 [关闭]
【发布时间】:2014-04-30 11:32:39
【问题描述】:
当用户登录时,我的应用程序正在从 GCM 获取设备令牌并注册我的服务器,如果用户已注销,则会从我的服务器中删除设备令牌。当用户登录时,只有我需要接收通知。它工作正常,但一个测试用例收到重复的通知,就像两次相同的数据。
测试用例:
`如果用户卸载应用程序或清除数据再次清除数据,则用户登录而不注销当我推送通知时收到两个具有相同数据的通知时,安装登录应用程序的应用程序。如何避免这种重复。
【问题讨论】:
标签:
android
notifications
push-notification
google-cloud-messaging
【解决方案1】:
如果用户清除了存储在设备上的数据,那么您在客户端就无能为力了。您可以为每个设备分配一个随机 id 并将其存储在外部存储中,当应用程序被卸载或应用程序数据被清除时,它不会被擦除。只要在本地存储中找不到该 ID,您的应用就可以恢复该 ID。这个Id可以和注册id一起发送给服务器,有助于识别和防止同一设备在你的服务器上有两个注册id的情况。
如果您无法阻止这种情况,您仍然可以在收到 Google 的规范注册 id 后进行修复,这样可以防止下次出现重复消息。