C2DM:我可以在同一个应用程序中注册多个sender-id吗?

use*_*618 5 android android-c2dm

我有一个管理第三方服务器列表的应用程序,可以轮询它们以获取信息.这些服务器应该彼此独立(并且可能不在我的控制之下).

现在我想实现c2dm通知以避免持续的主动轮询.第三方服务器将能够发布他们的senderId并允许我的客户在向registrationId谷歌注册后向他们发送C2DM .

现在我的问题是:是否可以从同一个应用程序包中注册多个c2dm发件人?如果是这样,我如何区分注册(尤其是注销)进程,以便我可以更新正确的本地服务器配置条目?

我找到的唯一资源是这个google群组线程,但它暂时没有回答.我希望你能提供帮助.

注意:这只是关于注册.发送消息时,第三方服务器可以注入其服务器名称,因此消息处理程序可以区分它们.但谷歌服务器的注册过程似乎没有给我一个选择将用户定义的信息传递给我的BroadcastReceiver

Mar*_*hon 3

这可能是相关的: http://groups.google.com/group/android-c2dm/browse_frm/thread/e2095d79c80de4c1/37325b1b1e5ec1e1 ?lnk=gst&q=multiple#37325b1b1e5ec1e1

作者:Costin Manolache(Google 软件工程师):

一个应用程序无法注册 2 个不同的发件人 ID - (android-id + 应用程序 id) 只有一条记录,第二个注册将取代第一个注册,第一个发件人将无法发送。

无论如何,这不是现在“受支持”的功能,但听起来很合理。

请不要使用与多个客户共享的一个发件人帐户 - 除了 TOS 之外,您可能会遇到其他问题。

我也有同样的问题。客户端在多个服务器上拥有多个帐户,并且应向其拥有帐户的所有服务器注册以接收通知。