我刚刚注册了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 的帐户,但我没有密码。密码在哪里或如何获得?