C2DM处理正确注册

时间:2011-12-22 01:29:54

标签: android registration android-c2dm

我想在我的Android应用程序中使用C2DM。我正在使用官方教程中显示的代码模式。一切似乎工作正常,但我有正确处理注册的问题。 我必须使用C2DMMessaging类中的两个方法:首先是register()和下一个getRegistrationID()。如果我按顺序使用它们,我会从getRegistrationID()获取null。问题是注册是异步的。在我的应用程序开始时我需要知道regidtrationId,我可以在我得到它之后启动应用程序的其余部分。 我尝试使用监视器进行一些同步(即寄存器方法中的wait()和C2DMReceiver.onRegistered()中的notify()),但是它没有工作(在调用wait之后还没有达到onRegistered()的代码()寄存器())。 换句话说,我需要的是使注册同步,所以我可以继续,只有在我获得registrationId之后。什么是正确的方法?

1 个答案:

答案 0 :(得分:0)

请确保遵循以下准则:

  1. 要在Android模拟器上进行开发和测试,您需要将Android 2.2版本的Google API插件下载到SDK中。
  2. 确保在清单中设置android:minSdkVersion="8"
  3. 确保您的模拟器或设备上至少同步了一个Google帐户。