Android 如何注意设备GCM注册ID是否过期?

Android 如何注意设备GCM注册ID是否过期?,android,registration,google-cloud-messaging,Android,Registration,Google Cloud Messaging,我知道我的设备的注册ID在GCM中不稳定,可能在google服务器上过期 当registrationID过期时,我应该续订它并将其发送到我的GCM服务器 我的Android应用程序保存其第一个注册ID并使用它。如果谷歌服务器更新注册ID并发送到GCM服务器,我怎么能在我的Android应用程序中注意到它已过期?没有这样的功能或API可用于检查它,你需要定义一段时间,以便在客户端内定期刷新它。根据 谷歌可能会定期刷新注册ID,所以你应该 设计您的Android应用程序时,请理解 com.googl

我知道我的设备的注册ID在GCM中不稳定,可能在google服务器上过期

registrationID
过期时,我应该续订它并将其发送到我的GCM服务器


我的Android应用程序保存其第一个
注册ID
并使用它。如果谷歌服务器更新注册ID并发送到GCM服务器,我怎么能在我的Android应用程序中注意到它已过期?

没有这样的功能或API可用于检查它,你需要定义一段时间,以便在客户端内定期刷新它。

根据

谷歌可能会定期刷新注册ID,所以你应该 设计您的Android应用程序时,请理解
com.google.android.c2dm.intent.REGISTRATION
intent可以调用 多次。您的Android应用程序需要能够响应 因此

另请注意:

注册ID将一直持续到Android应用程序显式启动为止 注销自身,或者直到Google刷新注册ID 你的Android应用程序

因此,当您收到
com.google.android.c2dm.intent.registration
intent时,需要更新服务器上的注册ID

此外,您还可以在启动器/主活动中设置一个代码,用于检查您是否已在GCM上注册,如下所示

String regid = getRegistrationId(context);
if (regid.length() == 0) {
    registerBackground();
}

您使用新的
GCM
library获得任何结果了吗?我也有同样的情况!