我正尝试创建一个使用推送通知的应用程序。我完成了第三方服务器和应用程序开发中的所有工作,并且通知已成功发送。如何正确更新应用程序中的GCM注册ID
在这个应用程序的某个部分,用户将通过特定的服务注册到GCM和第三方服务器,然后向第三方服务器上传他希望在完成。
我面临的问题是,当我卸载应用程序时,GCM服务器(当我发送消息时)不会响应NotConnected错误。所以当我重新安装应用时,GCMRegistrar会给我一个新的注册ID,这使得我的服务器为同一个用户提供了两个不同的注册ID。
虽然我可以借助规范的id来解决这个问题。尤其是谷歌表示
"canonical_ids": 1
"results": [{ "message_id": "1:2342", "registration_id": "32" }]
成功,但注册ID应该在服务器数据库进行更新(从23到32)
所以,如果我听谷歌的建议,与变更注册身份证到旧的(工作)身份证,这将导致应用程序的后缀和新的注册ID将橄榄球比赛发送到具有该特定新的注册ID的服务器,并且服务器将不知道在哪里存储该信息。
我知道注册ID不是用户的ID,而是注册设备的ID。
我的第一个想法是让服务器有不同的注册ID。所以当我得到一个规范的id时,我会忽略它。我不喜欢这个主意虽然...
我的第二个想法是,当我更改注册ID到旧之一,以某种方式更新到应用程序...
可有人告诉我这听起来对我的情况更好?这是我第一次使用推送通知......