首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >推送通知(如GCM )是如何在内部工作的?

推送通知(如GCM )是如何在内部工作的?
EN

Stack Overflow用户
提问于 2015-07-01 16:59:49
回答 1查看 1.1K关注 0票数 1

推送通知服务,如Google消息传递(GCM),提供了一种特殊的功能:它们能够唤醒处于空闲模式的设备。

哪种方式是用来唤醒设备上的推送连接有关电池寿命?我的第一个假设是,即使设备的处理器休眠,无线电的连接仍然是活动的。在收到推送消息的情况下,无线电通过中断唤醒处理器,并启动android意图处理推送消息。

但是像"OpenPush“这样的第三方推送服务提供了同样的功能,这使得我的假设看起来不完整或错误。还是这些服务只是多个供应商(谷歌、苹果)的推送系统的抽象,是连接以本地方式集成的服务的桥梁呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-01 17:08:53

我的第一个假设是,即使设备的处理器休眠,无线电的连接仍然是活动的。

如果说“无线电”,你指的是“细胞无线电”,这是正确的。即使CPU处于睡眠模式,也可以维护移动数据(而不是WiFi)上的打开套接字连接。该连接上的传入数据包可以唤醒CPU。Google已经花费了相当长的时间来调整这个问题,以最小化保持套接字存活的电量(例如,从设备到GCM服务器的“心跳”数据包)。

还是这些服务只是多个供应商(谷歌、苹果)的推送系统的抽象,是连接以本地方式集成的服务的桥梁呢?

这是一种常见的做法。

应用程序完全有可能在移动数据上维护自己的长期套接字。例如,SIP客户端就是这样做的。这是一个棘手的问题,特别是着眼于低功耗。我还担心这种方法的可靠性,Android M中会出现一些变化。

由于OpenPush目前非常不开放,我不能对他们正在做的事情发表具体评论。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31167461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档