如何将实时更新发送到我的 Android 设备?

Posted

技术标签:

【中文标题】如何将实时更新发送到我的 Android 设备?【英文标题】:How do I send live updates to my Android device? 【发布时间】:2016-04-10 16:35:48 【问题描述】:

我想以大约 1KB/秒的速度将实时更新发送到手机到我的应用。如果出于电源管理的原因,更新将每分钟分批进行一次,这是可以接受的,因为 Google 建议耗尽电池的原因是让收音机保持开启状态,而收音机会在 15 秒后断电。什么是合适的工具?

    Websockets/stomp。这就是我已经用于浏览器客户端的内容。但是我担心它会使收音机保持打开状态,并损坏电池。 谷歌云消息。谷歌承诺它的电池效率很高,但它的寿命如何?谁控制推送的频率?它是为大量数据而设计的吗?它是否必须为每次推送都设置通知,这对我来说是非常不受欢迎的,因为它是每秒推送一次。 亚马逊 SNS。我已经在使用 Amazon AWS,所以它可能很适合这个配置文件。电源管理有多好? 其他我不知道的事情

【问题讨论】:

【参考方案1】:

现在有https://firebase.google.com/docs/cloud-messaging/

Firebase 云消息传递 (FCM) 是一种跨平台消息传递解决方案 这让您可以免费可靠地传递消息和通知。

对于即时消息等用例,消息可以传输 高达 4KB 的负载到客户端应用程序。

FCM 是 Firebase 品牌下的新版 GCM。 (read more about FCM v GCM 和 limits and pricing)

如你所愿

更新将分批每分钟一次

如果新批次准备就绪,服务器可以发送通知,而不是每秒发送一次。

应用可以使用 HTTP(S) 连接来获取负载,而不是通过通知传输负载。这将允许使用一个 HTTP 请求在一批中下载所有更新,这可能更有效(开销更少)。

【讨论】:

以上是关于如何将实时更新发送到我的 Android 设备?的主要内容,如果未能解决你的问题,请参考以下文章

如何将具有值的函数发送到子组件 React?

将状态更新从 C++ 中的函数发送到 C#

真实设备如何将位置信息推送到API?

无法将通知推送到 iOS9 设备

如何将 jchararray 作为参数发送到 C 函数

如何将xml参数发送到WCF?