我们如何从c2dm(Android)获得注册ID?

时间:2011-05-12 07:14:43

标签: android android-c2dm

在Android应用程序上,如何获取注册ID?

2 个答案:

答案 0 :(得分:2)

来自C2DM文档

这是在移动设备上运行的Android应用程序注册接收消息时发生的事件序列:

  • 应用程序首次需要 它使用消息传递服务 发起注册意图 C2DM服务器。这个注册意图 (com.google.android.c2dm.intent.REGISTER) 包括发件人ID(即 帐户被授权发送邮件 到应用程序,这是 通常是电子邮件地址 应用程序设置的帐户 开发人员)和应用程序ID。

  • 如果注册成功, C2DM服务器广播一个 注册意图赋予 申请注册ID。该 应用程序应存储此ID 以后用。请注意,Google可能会 定期刷新注册 ID,所以你应该设计你的 申请与理解 注册意图可能是 多次召唤。您的 应用程序需要能够 做出相应的回应。

  • 要完成注册,请 应用程序发送注册ID 到应用程序服务器。该 应用服务器通常存储 数据库中的注册ID。 注册ID持续到 应用程序明确取消注册 本身,或直到谷歌刷新 您的申请的注册ID。

答案 1 :(得分:0)

这是C2DM页面的链接。 http://code.google.com/android/c2dm/index.html#registering

在页面底部有指向使用C2DM的示例应用程序的链接。

基本上你需要声明一个接收者来接收来自Google的registration_id,然后像这样发出注册请求:

Intent registrationIntent = new Intent("com.google.android.c2dm.intent.REGISTER");
registrationIntent.putExtra("app", PendingIntent.getBroadcast(this, 0, new Intent(), 0)); // boilerplate
registrationIntent.putExtra("sender", emailOfSender);
startService(registrationIntent);