Android C2DM 注册 ID

标签 android android-c2dm

我正在构建一个使用 c2dm 的应用。

我认为我应该在我的应用程序的主要“Intent ”启动时请求注册 ID。我一直在这样做,但似乎每个请求都会产生一个新的字符串,所以我最终在我的数据库中为同一台设备堆积了大量的注册 ID。我认为其中只有一个会起作用。但是,我不想只删除旧的,因为我希望我的用户能够在拥有多台设备的情况下在多台设备上接收通知。

我该如何处理?

最佳答案

在您的应用安装到您的设备上之前,切勿刷新 ID

我已经实现了 C2DM。如果您的一台设备有多个注册 ID,则只有最新的 ID 才可用于发送通知。

当您将设备注册到谷歌服务器时,它会生成一个与该设备 ID 相对应的字符串(如您所知)。但是如果您再次使用同一设备注册,则之前的设备将无用。

所以我会建议更好地保留设备已注册或未注册的信息。如果已注册,则无需再次重新注册。因为您会收到基于旧 R_ID 的通知。只需将此 R_ID 发送到您的服务器以进行通知,并将标志保存在您的数据库中以跟踪注册

关于Android C2DM 注册 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6146018/

相关文章:

android - 收到 C2DM 推送通知时更改 Activity 行为

android - 与 android 中的 c2dm 消息传递混淆

Android Studio 未将应用程序安装到设备中

android - 如何检查电话号码是否已存在于 Firebase 身份验证中?

android - 单个设备突然停止从我的服务器获取 C2DM 推送

android - 使用registerReceiver动态注册C2DM接收器

android - 应用程序未在 Android 设备上运行

android - 我能否找出我的哪些 Beta 测试人员实际安装了我的 Android 应用程序?

Android 6.0 错误处理 drawCircle 方法

android - GCM - 注册完成后,registerID 立即为空