我使用的phonegap push notfication插件可以在这里找到: https://github.com/phonegap/phonegap-plugin-push
使用此插件我使用GCM API。
我的情景是: 我的应用程序中的任何用户都有一个令牌列表,表明他使用的手机/电话:
PKID | userID | registerToken
1 | 9 | someToken1
2 | 18 | someToken2
3 | 13 | someToken3
4 | 13 | someToken4
用户可以拥有多个令牌,但令牌只能拥有1个用户。 显然,如果用户退出或更换手机等,我会使用正确的逻辑维护此表...
问题在于GCM的令牌刷新系统。 根据GCM文档,他们会定期刷新令牌。 在本机代码上,您可以使用名为“tokenRefreshed”的侦听器。
1)GCM仍然刷新令牌,或者令牌现在是不变的?
2)我如何在这个插件中使用这个监听器?
3)我怎么能知道我有手机的最后一个注册令牌ID?
4)即使我使用“tokenRefreshed”,我怎么知道它替换在我的桌子上的哪个令牌? (我需要知道以前的标记)
答案 0 :(得分:1)
根据我的经验,当您从设备卸载应用时,GCM令牌会过期。因此,对于每个安装商店,本地存储中的注册ID在卸载应用程序时会被擦除。
接下来,检查您的本地存储中是否仍有注册ID。如果没有,请按下注册,为您提供新的注册ID。假设您已经知道用户登录的userID,您只需将旧的注册ID替换为新的注册ID即可。
只要注册ID是新应用安装的最新版本,推送通知就可以正常工作。
我对GCM推送服务的经验非常了解。