C2DM - 如何使用一个发件人ID将邮件推送到多个设备?

时间:2012-02-06 11:54:36

标签: android account device android-c2dm sender-id

我有一个Gmail帐户已注册C2DM。

我想要的是我的应用,感谢此帐户(在为每个设备请求注册ID和身份验证令牌之后),可以向所有设备提供消息,其中安装了应用。

我想知道是否可以这种方式使用C2DM。

非常感谢

(有任何细节,请问我..)

ps我让c2dm在模拟器上运行,但当然我不能尝试之前写的东西因为我需要几部手机..

3 个答案:

答案 0 :(得分:0)

如果我理解你的问题,答案是:你不能。

您必须为要访问的每台设备向Google服务器发送一个http请求。

无法向已注册您服务的所有用户广播消息。

它'令人沮丧,因为在我的情况下,我为所有用户发送了一份简报,因此打开与数百万用户的连接是很昂贵的。

为了解决可扩展性问题,我创建了一个简单的appengine map-reduce任务,循环遍历所有用户注册并创建与google服务的http连接,它是你能够最快的,因为它动态实例化新的服务器满足您的交付需求。

答案 1 :(得分:0)

关闭你的问题和评论,听起来你只是想知道你是否可以只使用一个发件人ID向不确定数量的设备发送c2dm通知。

这正是c2dm的工作方式。您创建一个要在后端服务器上使用的发件人ID,并在您的应用中使用该发件人ID来注册c2dm通知。然后,您的后端会收集所有注册ID,并使用您的一个发件人ID来推送感兴趣的通知。

答案 2 :(得分:0)

C2DM已被弃用。 GCM取代了它,它允许您通过一个HTTP POST向1000个设备发送消息。

C2DM-> GCM迁移指南: http://developer.android.com/guide/google/gcm/c2dm.html