2012-12-03 166 views
2

我想知道如果GCM服务器决定刷新应用程序先前从GCM服务器检索到的registrationId,应用程序/设备将如何通知。 目前,我保存第一个检索的registrationId并将其保存在数据库中,并将此注册ID发送到应用服务器。因此,下次App不会与GCM服务器通话。 在这种情况下,App不会知道GCI服务器是否更改了registrationId。谷歌文件提出了一些处理案件,但没有提到应该采取什么措施。从谷歌 行情 -如何处理GCM更改注册ID?

虽然请求由应用程序作出后com.google.android.c2dm.intent.REGISTRATION意图通常接收,谷歌可以周期性地刷新该注册ID。因此,应用程序必须随时准备好处理它。

任何建议将是有益的,

感谢, SKU

+0

我绝对知道如何做到这一点,但谷歌GCM文档由于某种原因,现在哈哈。 – Jameo

回答

2

老REG ID继续工作一段时间,但谷歌发出一个新的要在未来的canonical_id使用响应领域。

+0

你的意思是应用程序服务器应该使用新的regId做出响应?它是否与设备通信? – sku

+0

应用程序服务器将只与GCM服务器直接通信,然后GCM服务器将消息传递给设备(我们希望)。如果您在消息中发送了regid,并且GCM服务器决定更改regid,则未来要使用的新regid将返回到响应的canonical_id字段中。当网站恢复时,请查看开发人员文档。 – NickT

+0

我明白你的意思了,谢谢。 – sku