我读了这个,但我不明白我必须做什么。现在我的应用程序通过以下代码在 c2dm 中进行注册:
String pushId = C2DMessaging.getRegistrationId(this);
if(pushId == "")
{
C2DMessaging.register(this, "email@gmail.com");
}
为了从 c2dm 迁移到 gcm,我必须在此代码中进行哪些更改?
我读了这个,但我不明白我必须做什么。现在我的应用程序通过以下代码在 c2dm 中进行注册:
String pushId = C2DMessaging.getRegistrationId(this);
if(pushId == "")
{
C2DMessaging.register(this, "email@gmail.com");
}
为了从 c2dm 迁移到 gcm,我必须在此代码中进行哪些更改?
首先,完成入门步骤。创建 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 架构概述,因为您需要对服务器进行一些更改才能使所有这些工作。
您需要更改的基本上是电子邮件地址。您需要发送您在 Google API 控制台页面中收到的 API 密钥。
在 GCM 中,为了摆脱 Qutota,谷歌删除了注册和使用谷歌云服务的电子邮件激活。
当您转到Google Developer Console Here 并单击创建一个新项目时,它将为您提供一个新的项目 ID,该 ID 将出现在 URL 中。
这里的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中 : url 中的PROJECT ID。