从C2DM迁移到GCM

时间:2012-07-04 09:18:04

标签: android android-c2dm google-cloud-messaging

我正在阅读this,但我不明白我必须做什么。现在我的应用程序通过以下代码在c2dm中进行注册:

String pushId =  C2DMessaging.getRegistrationId(this);
if(pushId == "")
{
    C2DMessaging.register(this, "email@gmail.com");
}

在此代码中我必须更改哪些内容才能从c2dm迁移到gcm?

3 个答案:

答案 0 :(得分:3)

首先,完成Getting Started步骤。创建API项目后,您将收到一个“项目ID”,如该文档中提到的#4项目:

Take note of the value after #project: (4815162342 in this example). This is your project ID, and it will be used later on as the GCM sender ID.

所以你只需要将代码更改为:

C2DMessaging.register(this, "4815162342");

senderID必须是字符串编号。

我正在使用“使用入门”指南中的示例,您应该使用自己的项目ID替换发件人ID。

最后,浏览GCM Architectural Overview,因为您需要对服务器进行一些更改才能使所有这些更改起作用。

答案 1 :(得分:1)

您需要更改的内容基本上是电子邮件地址。 您需要发送在Google API控制台页面中收到的API密钥。

答案 2 :(得分:0)

在GCM中摆脱Qutota google删除了注册,激活了使用Google Cloud Service的电子邮件。

当您转到Google Developer Console此处并点击创建一个新项目,该项目将为您提供一个新的项目ID ,该项目将显示在网址中。

这里的 PROJECT ID 就像用户名一样,还有一件事,Google这次提供的jar gcm.jar 您需要使用构建路径添加项目类路径以使GCM正常工作。

这个jar包含一个名为GCMRegistrar的类,它有预定义的函数register(),所以你只需添加这段代码就忘了

final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
  GCMRegistrar.register(this, SENDER_ID);
} else {
  Log.v(TAG, "Already registered");
}
  

在C2DM SENDER_ID :已激活 Gmail ID

     

在网址中的GCM SENDER_ID PROJECT ID