java推送技术
这段时间一直在做关于服务器端向APP端推送消息,查阅了大量的资料,这里做下总结。
关于推送我们常见的推送有APP外推送,APP内推送。APP外推送有各大平台极光,友盟等,而APP内的推送可以用的服务基本需要自己去实现,这里我给大家介绍的就是关于APP内的推送技术,我会再下面的文章介绍如何实现APP内推送。
推送协议分类
这些是我从网上查询出的协议对比
方案1、 使用GCM服务(Google Cloud Messaging)
简介:Google推出的云消息服务,即第二代的G2DM。
优点:Google提供的服务、原生、简单,无需实现和部署服务端。
缺点:Android版本限制(必须大于2.2版本),该服务在国内不够稳定、需要用户绑定Google帐号,受限于Google。
方案2、 使用XMPP协议(Openfire + Spark + Smack)
简介:基于XML协议的通讯协议,前身是Jabber,目前已由IETF国际标准化组织完成了标准化工作。
优点:协议成熟、强大、可扩展性强、目前主要应用于许多聊天系统中,且已有开源的Java版的开发实例androidpn。
缺点:协议较复杂、冗余(基于XML)、费流量、费电,部署硬件成本高。
方案3、 使用MQTT协议(更多信息见: