最近,查阅了android推送的相关资料,分享给大家
android推送原理
1. 引用自极光推送原理
android相关解决方案
2. 长连接实现,文章转自:
http://blog.csdn.net/everlastinging/article/details/10894493
目前的推送产品
产品列表
1. 百度push
2. JPush(极光推送)
参考文档:
https://www.jpush.cn/
3. 个推
参考文档:
http://www.igetui.com/
4.其他
产品对比
对比Biadu Push ,JPush , 个推 ,微信
一次心跳(端),分别为
2byte,
14byte,
8byte,
16byte
一次心跳 (云),分别为
2byte,
NO
,8byte
,
16bute
心跳频率
,分别为10分钟,
10分钟,
不固定
,
4.5分钟
一次网络耗电
,分别为2.4J,
2.5J,
2.4J,
2.6J
以上数据从互联网查的,可能不准,没有查到一次心跳CPU的耗电,但是可以大概判断一下
一天的流量,一天的耗电量
技术选型思路(待完善)
1. 可以直接使用Baidu Push解决方案,省流量
2. 自己实现
(1)android采用AlarmManager实现,定时发送心跳任务
(2)发送时机,可以是点亮屏幕,网络变化,手机启动完成
(3)多个app都用push的时候,可以共用一个后台Service,维系与服务端的长连接,省电
(4)服务端实现待调研