【问题标题】:how to implement publish subscribe push notification in android mobile device without polling如何在没有轮询的情况下在android移动设备中实现发布订阅推送通知
【发布时间】:2012-04-01 08:10:26
【问题描述】:

有没有办法在 Android 中实现发布订阅推送通知? 同时,客户端(在移动应用程序中运行的应用程序)不应该轮询服务器以获取信息,因此每当有更新时,服务器应该发布公共消息并且预期的发送者应该接收它。 (在移动应用程序中运行的应用程序不应轮询它)

请指导我。提前致谢。

【问题讨论】:

  • 您是在询问多播通知吗?如果没有,请使用 google 的 C2DM 服务器。
  • 不,我需要同时将一条普通消息推送到多个设备

标签: android android-intent android-c2dm publish-subscribe android-contentprovider


【解决方案1】:

有没有办法在Android中实现发布订阅推送通知?

使用C2DM。但是,由于 C2DM 不保证送达,您仍然需要不定期进行投票以确保您没有错过任何消息。

其他任何会推送并可能保证交付的东西(例如,将 RabbitMQ 之类的东西作为客户端的 MQ 服务器)都需要您保持 Android 服务始终运行。用户或操作系统可以在需要时摆脱您的服务。

【讨论】:

  • 谢谢。如果假设我想同时向所有订阅者发送公共消息或向多个设备发送公共消息,C2DM 是否支持此功能?
  • 并提到C2DM将每条消息一一推送到每个设备? Publish/Subscribe 中没有实现吗?
  • @user149535:C2DM 向单个设备发送单个消息。 所有“发布/订阅”系统将单独的消息发送到单独的端点,因为从网络的角度来看,这是可能的。一个真正的“发布/订阅”系统只是提供了试图从应用程序代码中隐藏这一点的 API,从而显示您正在向“我的所有订阅者发送一条公共消息”或正在执行其他批量操作。 C2DM 没有那种 API,但欢迎您在 C2DM 之上编写自己的层。
猜你喜欢
  • 1970-01-01
  • 2015-04-24
  • 1970-01-01
  • 2020-05-10
  • 1970-01-01
  • 1970-01-01
  • 2020-10-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多