从Android gcm服务器接收重复推送通知

时间:2014-04-30 11:32:39

标签: android notifications push-notification google-cloud-messaging

我的应用程序用户登录时从GCM获取设备令牌并注册我的服务器,如果用户已注销,则从我的服务器删除设备令牌。当用户登录时,我只需要接收通知。它的工作正常,但是一个测试用例我收到了两次相同数据的重复通知。

testCase: `如果用户卸载了应用程序,则用户无需注销,或者在我按下通知时接收两个具有相同数据的通知时再次清除数据安装应用程序登录应用程序。如何避免这种重复。

1 个答案:

答案 0 :(得分:0)

如果用户清除设备上存储的数据,则在客户端无法做到。您可以为每个设备分配一个随机ID并将其存储在外部存储中,当卸载应用程序或清除应用程序数据时,该存储不会被删除。只要在本地存储中找不到ID,您的应用就可以恢复该ID。此ID可以与注册ID一起发送到服务器,并帮助识别和防止同一设备在您的服务器中有两个注册ID的情况。

如果您无法阻止这种情况,您仍然可以在收到Google的规范注册ID后修复此问题,这样可以防止下次重复邮件。