0

我刚刚注册了C2DM,并收到了以下电子邮件:

感谢您对 Android 云到设备消息传递 (C2DM) 的关注。我们已接受您加入试用组的申请。您请求作为应用程序发件人帐户的 Google 帐户:some.fake@email.com 已添加到我们的允许发件人列表中,您应该可以在第二天开始使用它向 Android 2.2 设备发送消息或者。如果您想更改用于发送消息的角色帐户,请再次填写注册表单。默认情况下,所有新的发件人帐户都被授予初始生产级配额,如下所述: http ://code.google.com/android/c2dm/quotas.html 如果您需要更高的配额,请按照该页面上的说明提交配额请求。请注意,由于 Android Cloud to Device Messaging 目前是实验室中的 API,我们保留随时从根本上更改服务和相关配额的权利。有关 Android Cloud 到设备消息传递的更多信息,您可以阅读我们的文档和示例代码: http ://code.google.com/android/c2dm/ 如果您有任何问题或反馈,请访问 Google 群组: http: //groups.google.com/group/android-c2dm 请不要回复此电子邮件,因为发件人地址不受监控。谢谢,Android Cloud 到设备消息传递团队

所以现在我准备开始向 C2DM 推送一些通知。我有一个使用DroidPimp的基于 .net 的服务器端实现:

public class C2DMNotificationService : INotificationService<IAndroidPushNotification, C2DMChannel, IAndroidPhoneEndpoint>
{
    public void SendNotification(IAndroidPushNotification notification, C2DMChannel channel, IAndroidPhoneEndpoint endpoint)
    {
        var pusher = new Pusher();
        if (string.IsNullOrEmpty(notification.AuthToken))
        {
            // Note: this authtoken is refreshed periodically, so we need to think about how often we grab a new authtoken from google.
            var source = string.Format("{0}-{1}-{2}", channel.CompanyName, channel.ApplicationName, channel.Version);
            var loginResp = pusher.ClientLogin(channel.AccountEmailAddress, channel.AccountPassword, source);
            if (loginResp.StatusCode != ClientLoginStatusCode.Ok)
                throw new Exception("Got a bad login status: " + loginResp.StatusCode);
            notification.AuthToken = loginResp.AuthToken;
        }
        var sendMessageResp = pusher.SendMessage(endpoint.RegistrationId, notification.CollapseKey, notification.Values, notification.AuthToken, notification.DelayWhileIdle);
        // TODO: check response status..
    }
}

如您所见,该pusher.ClientLogin方法需要密码,但我没有密码。我有一个发件人帐户,这是我用来注册 C2DM 的帐户,但我没有密码。密码在哪里或如何获得?

4

2 回答 2

1

正如保罗所说,您需要使用由 Google 控制的有效电子邮件帐户注册 C2DM 服务。它不必是 gmail 帐户,但如果它是通过 google 注册的电子邮件服务,它需要使用 google 电子邮件服务器(即使用 you@yourdomain.com)。

一旦你注册了 C2DM 服务https://developers.google.com/android/c2dm/signup使用该帐户,

于 2012-06-19T15:08:09.877 回答
0

您必须使用“谷歌控制”的电子邮件,例如 gmail 帐户。这就是 C2DM 的工作方式,发送者和接收者的所有身份验证都基于谷歌帐户。我刚刚再次注册了 C2DM,这次使用的是 gmail 帐户,然后使用我的 gmail 密码发送推送通知,果然成功了——我取回了一个身份验证令牌。

于 2012-06-18T16:24:22.860 回答