如何创建或获取用于向 C2DM 发送通知的密码



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

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

所以现在我准备开始向 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的帐户,但我没有密码。密码在哪里或如何获取密码?

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

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

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

最新更新