菜单
  

    常见推送解决方案的实现原理分析:1) 轮询(Pull)方式:应用程序应当阶段性的与服务器进行连接并查询是否有新的消息到达,必须自己实现与服务器之间的通信,例如消息排队等。而且还要考虑轮询的频率,如果太慢可能导致某些消息的延迟,如果太快,则会大量消耗网络带宽和电池。64787

    2) SMS(Push)方式:在Android平台上,你可以通过拦截SMS消息并且解析消息内容来了解服务器的意图,并获取其显示内容进行处理[3]。这个方案的好处是,可以实现完全的实时操作。但是问题是这个方案的成本相对比较高,我们需要向移动公司缴纳相应的费用。目前很难找到免费的短消息发送网关来实现这种方案。

    3) 持久连接(Push)方式:通过客户端与服务器之间维持一个TCP/IP连接来实现推送。实现推送的关键就是要求终端保持相对稳定的IP地址,且客户端软件始终运行并侦听特定的socket端口,从而实现信息的准实时推送。这个方案可以解决由轮询带来的性能问题,但是还是会消耗手机的电池。而且在实际应用中,一个长时间空闲的无线数据连接会被网络接入设备断开,以节省网络资源。

    2  常见推送解决方案介绍

    Android平台上最主流的几种消息推送方案

    1) 使用GCM服务(Google Cloud Messaging)

    简介:Google推出的云消息服务,即第二代G2DM (Android Cloud to Device Messaging)。

    优点:Google提供的服务、原生、简单,无需实现和部署服务端。

    缺点:Android版本限制(必须大于2.2版本),该服务在国内不够稳定、需要用户绑定Google帐号,受限于Google。

    2) 使用XMPP协议(Openfire + Spark + Smack)

    简介:基于XML协议的通讯协议,前身是Jabber,目前已由IETF国际标准化组织完成了标准化工作[4]。

    优点:协议成熟、强大、可扩展性强、目前主要应用于许多聊天系统中,且已有开源的Java版的开发实例androidpn。

    缺点:XMPP协议复杂冗余,客户端费流量、费电;开源的XMPP服务器(androidpn选择的是Openfire)单点容量有限,集群方案复杂、不成熟。

    3) 使用MQTT协议论文网

    简介:轻量级的、基于代理的“发布/订阅”模式的消息传输协议。

    优点:协议简洁、小巧、可扩展性强、省流量、省电,目前已经应用到企业领域,且已有C++版的服务端组件RSMB(Really Small Message Broker) [5]。

    缺点:不够成熟、实现较复杂、服务端组件RSMB不开源,部署硬件成本较高。

    4) 使用第三方平台提供的服务

    简介:现在有很多不错的第三方推送平台,其中有一些是免费的,目前国内比较不错的免费第三方平台是极光推送。

    优点:可以直接使用第三方平台所提供的各种服务,节约开发成本、时间。

    缺点:受限于服务提供方,灵活性小。

  1. 上一篇:LCC在国外的发展研究现状
  2. 下一篇:功分器的研究现状和参考文献
  1. IIR系统识别国内外研究现状综述

  2. 超大规模集成电路技术国内外研究现状

  3. 自动闭塞分区优化设计国内外研究现状综述

  4. 国内外转载机研究现状及未来趋势

  5. 液压试验台的国内外研究现状和发展趋势

  6. 高速液压冲击加载系统国内外研究现状

  7. 混沌加密通信国内外研究现状综述

  8. 当代大学生慈善意识研究+文献综述

  9. 杂拟谷盗体内共生菌沃尔...

  10. 河岸冲刷和泥沙淤积的监测国内外研究现状

  11. 中考体育项目与体育教学合理结合的研究

  12. java+mysql车辆管理系统的设计+源代码

  13. 电站锅炉暖风器设计任务书

  14. 酸性水汽提装置总汽提塔设计+CAD图纸

  15. 乳业同业并购式全产业链...

  16. 大众媒体对公共政策制定的影响

  17. 十二层带中心支撑钢结构...

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回