最近开始做推送,发现 Android 平台的推送服务实在是太多了,于是就有了这篇推送调研文章。
首先,iOS 设备的推送都会通过 APNs,所以不需要担心到达率的问题。
常见的手机厂商推送有:
第三方推送的一般使用长连接和应用间互相唤醒的方式来保证推送的到达率,但是此种方式用户体验很差,存在内存占用过大以及电量的消耗加快等负面影响。而且由于 Andoird 5.0 之后后台进程以及定时任务的限制,保持长连接会变得越来越困难,所以即使是极光、友盟等这样专业的推送平台,达到率也不会有他们宣称的那么高,一般估计在 50%~70%,甚至更低。另外,也可以考虑通过商务合作手段让手机厂家给应用开白名单。
第三方平台的推送服务的优点是通道聚合,接入成本低。缺点除了上面提到的到达率不如系统级推送,另外还有用户数或设备的限制,也就是说用户数大的情况下有些推送平台需要收费。
以下是针对第三方推送平台以及普通应用常见的推送需求整理出的一些对比:
收费 | 厂商通道支持 | 到达率 | 集成难度 | |
---|---|---|---|---|
友盟 | 否 | 支持 | 高 | 较高 |
极光 | 用户数 >= 500万收费() | 支持 (仅 VIP) | 高 | 一般 |
个推 | 否,高峰期有瓶颈限制,有 | 不支持 | 高 | 一般 |
阿里移动推送 (ACMP) | 设备数 >= 5万收费() | 支持 | 一般 | 一般 |
信鸽 | 否 | 支持 | 一般 | 一般 |
百度云推送 | 否 | 不支持 | 高 | 一般 |
- 集成难度判断主要根据文档编写质量,Demo 质量,以及个人主观判断。
综上,优先推荐使用友盟,同时后期可考虑接入小米、华为等厂商通道。
参考: