如何注意设备GCM registrationID是否已过期?

时间:2013-08-07 05:25:49

标签: android registration google-cloud-messaging

我知道我的设备的registrationID在GCM中不稳定,并且可能在Google服务器上已过期。

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

我的Android应用保存了第一个registrationID并使用它。如果谷歌服务器中的registrationID已过期以便续订并发送到GCM服务器,我如何在Android应用中注意到?

2 个答案:

答案 0 :(得分:1)

根据docs

  

Google可能会定期刷新注册ID,因此您应该这样做   设计你的Android应用程序与理解   可以调用com.google.android.c2dm.intent.REGISTRATION意图   多次。您的Android应用程序需要能够响应   相应

另请注意:

  

注册ID会一直持续到Android应用程序   取消注册,或直到Google刷新注册ID   你的Android应用程序。

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

您也可以在启动器/主活动中找到一个代码,用于检查您是否在GCM上注册,如下所示

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

答案 1 :(得分:-1)

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