当用户更新或重新安装应用程序时,注册ID是否会更改

use*_*596 4 android push-notification google-cloud-messaging

根据http://developer.android.com/google/gcm/client.html#sample-register ,当我为我的应用发送更新并且用户更新时,注册ID已更改...

  1. 当用户卸载应用程序然后重新安装它时,如果他安装了与以前相同的版本,注册ID是否也会更改?
  2. 我应该检查用户每次输入时是否更新应用程序,如果是,则应用程序将新的注册ID发送到服务器.
  3. 我可以获取并发送到我的服务器的每个设备是否有任何唯一的常量ID?

谢谢

Era*_*ran 5

安装新版本的应用程序时,注册ID不一定会更改.谷歌建议在安装新版本后启动应用程序时重新注册GCM,以克服在安装新版本时GCM消息到达时可能导致设备取消注册的错误.

  1. 卸载应用程序并再次安装时,注册ID可能会更改,但不一定.我发现它更改的情况如下:在卸载应用程序后,服务器会向设备发送一些GCM消息,直到收到NotRegistered错误.然后,当您重新安装该应用程序时,您将获得一个新的注册ID.

  2. 是的,这就是你应该做的.您可以在客户端演示中看到完全相同的代码示例.

  3. 您可以生成自己的ID并将其存储在外部存储中,以便在卸载应用程序后继续存在.

另见这个答案.