应用升级后收到重复通知

时间:2017-04-06 07:18:06

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

在卸载旧版本并重新安装新版本时,我看到很多关于为应用程序接收新注册ID的问题。

但我注意到,应用升级会生成新的注册ID,而旧的注册ID不会生成Invalid / NotRegistered。对不起,如果我在这个主题上已经过时了。

这会导致在从服务器发送通知时收到同一设备的多个通知的问题。

因此,我需要在应用升级时调用FirebaseInstanceId.getInstance().deleteInstanceId();,或者FCM将来是否会使旧的注册ID无效?

2 个答案:

答案 0 :(得分:1)

AFAIK,App Update shouldn't generate a new registration token

但是,如果您设法从onTokenRefresh()回调中收到新令牌,则应立即更新应用服务器上的相应详细信息,保存新标记并删除旧标记。这样,您就不必致电deleteInstanceId()

除非您只是通过调用getToken()来接收新的和不同的令牌,否则这是一种意外行为。请发布相关的代码片段,以便我们进一步了解它。

答案 1 :(得分:0)

不要将注册密钥存储在发送通知的服务器数据库中。 使用更新查询而不是将注册密钥插入数据库。