首页 文章

关于设备传输时在Android App中的GCM registrationId

提问于
浏览
0

我正在使用GCM开发Android App .

我通过以下代码获得registrationId以发送推送通知,然后将其存储在SharedPreferences中 .

registrationId = gcm.register("xxxxx");

当我的应用程序通过备份工具从一个设备传输到另一个设备时,我想每个存储在SharedPreferences中的数据都会被传输 .

然后我认为上面的registrationId在新设备中没有活动 .

这是真的吗?

如果是,那么解决这个问题的最佳方法是什么?

我应该总是获得最新的registrationId,然后如果它与存储在SharedPreferences中的那个不同,重新保存新的吗?

1 回答

  • 1

    是的,它是真实的 . “对于使用Google Cloud 消息传递(GCM)进行推送通知的应用,备份Google Cloud Messaging注册返回的注册令牌可能会导致已恢复应用的通知出现意外行为 . 这是因为当用户在新设备上安装您的应用时,应用程序必须向GCM API查询新的注册令牌 . 如果旧注册存在,因为系统已备份并恢复它,应用程序不会寻找新令牌 . 为了防止此问题出现,请排除来自备份文件集的注册令牌 . “ - 来自developers.android.com

相关问题