2012-06-13 45 views
0

经过一番适应和启动后,我得到了Android C2DM在仿真器中工作。第一次启动应用程序时,它使用chrometophone project中的代码注册C2DM服务。 registrationId保存在首选项中,并在随后的启动中使用。C2DM registrationId在仿真器重启后

只要模拟器继续运行,这似乎可以正常启动,。但是,如果我杀死模拟器并重新启动它,那么应用程序需要重新注册以再次开始接收C2DM消息。这是已知的/预期的行为?

回答

0

是的,这是已知的/预期的行为。 Item 2 in Enabling C2DM读取:

如果注册成功,则服务器C2DM广播 REGISTRATION意图这给所述应用程序的注册ID。 应用程序应存储此ID供以后使用。 请注意,谷歌可能会 定期刷新注册ID,所以你应该设计你的 应用程序的理解是REGISTRATION意图可能是 多次调用。您的应用程序需要能够相应地响应 。

我发现注册ID变化很频繁。我还发现,即使在注册ID发生变化之后,较旧的仍然可以工作一段时间。