This question already has answers here:
Do old GCM tokens live on even after an uninstall?

(2个答案)


5年前关闭。




我目前正在尝试使用GCM向用户发送通知,并且目前我仍在研究如何最大限度地利用它。现在,我仅使用here文档中提供的示例项目,并使用gcm-client示例对其进行处理。

现在使用此project from Git,我尝试使用应用程序创建的注册ID推送消息,是的,它成功发送了消息。

现在的问题是,在我卸载了应用程序之后。重新安装后,它将生成一个新的注册ID,并将其与先前的ID一起存储在服务器上,但是我无法标记先前的注册ID以不接收任何其他消息,因为当用户没有互联网时可能会发生卸载联系。之后,我向两个注册ID发送一条消息,分别是卸载应用程序之前的ID和重新安装应用程序之后的ID。发生的是,尽管我希望它只会收到一条推送消息,但由于该应用程序已经更改了注册ID,所以我仍然收到两条推送消息。

我希望如果我也更新了该应用程序,则该应用程序可能会收到两个或多个重复的应用程序,因为如文档所述,注册ID可能会在更新时更改。

我可以采取任何解决方法来处理这些重复的消息?

最佳答案

从官方文档中:



但是,很显然,您仍然会收到旧注册ID的通知,因为用户在其他问题中表示:

  • Android GCM and multiple tokens
  • Unregistering and re-registering for GCM messages causes two regId's to be valid. Is this as intended?
  • Do old GCM tokens live on even after an uninstall?

  • 对于此问题,有一个称为“规范ID”的功能:

    09-27 00:28
    查看更多