软件程序猿学习Android

Android消息推送:第三方消息推送平台详细解析

2016-12-04  本文已影响17389人  Carson带你学安卓

前言

推送消息截图

阅读本文前,建议先阅读我写的文章:史上最全解析Android消息推送解决方案


目录

目录

1. 主流的第三方推送平台分类


2. 对比其他推送方式的特点

其他推送方式还有:C2DM、轮询、SMS、MQTT协议、XMPP协议等等,相对于这些推送方式,第三方推送方式的特点分别是:


3. 第三方推送服务方式的特点

3.1 手机厂商推送

请记住一个潜规则:操作系统是不会杀死属于自己品牌的推送服务。

  1. 手机厂商的推送服务在自家的手机上属于系统级别的服务,这意味着系统不会杀死自家的推送服务
  2. 比如说,Android原生系统是不会杀死C2DM消息推送服务,MIUI系统是不会杀死小米的推送服务。

当今市场上的Android手机系统份额最高是MIUI系统,即小米(具体排名请看http://www.umindex.com/

因为:免费、到达率高且在Android系统市场份额第一的MIUI系统上不被杀死。所以,如果要选择手机厂商的推送服务,请选择小米推送作为第三方平台实现推送服务

下面一些应用可以从侧面来证明我的推断:

集成应用
  1. 如果希望进一步提高推送的效果,其实可以集成多个手机厂商的推送服务
  2. 比如小米渠道用小米推送,华为渠道用华为推送,但这样的实现成本会大一些

3.2 第三方平台类

请记住一个规则:推送系统会共享一条推送渠道

  1. 这意味着假设你接入了友盟推送,而恰好今日头条也接入了友盟。
  2. 有一天你的App被杀死了,但这时用户启动了今日头条,那么推送系统也就会通过共享的推送通道顺便把你推送消息送达到手机上,然后还可能把你的进程也唤醒(被“保活”了)。

所以说,关于如何选择第三方平台类的推送,推送平台的规模效应就很重要了。
那如何得知他们的规模和市场份额呢?按个人经验,主要看两点:

3.3 BAT大厂的推送

BAT大厂其实并没有什么优势,同时谨记:


4. 如何选择第三方平台推送服务?

示意图

大家可以根据自己的使用场景来进行消息推送平台的选择。


5. 推送消息类别的选择

5.1 推送消息的类别

通常第三方推送平台都支持两种推送消息类型:通知栏消息和透传消息。

不会继续被传递到App

  1. 通过回调App的某个BroadcastReceiver的形式将消息传递到App内部。然后由App决定如何处理和显示这个消息。
  2. 所以透传消息不一定会以系统通知栏的形式进行推送,由程序猿自定义

5.2 消息类别的区别与特点

我们来看下小米推送的官方文档描述:

  1. 在一些 Android 系统(如 MIUI)中,受到系统自启动管理设置的限制,应用不能在后台自启动
  2. 在这类系统中,如果在发送消息的时候对应的应用没有被启动,透传类消息将不能顺利送达。
  3. 因此,对于对送达率要求很高的消息,建议尽量采用通知栏提醒的方式推送消息
  1. 提供了对消息数据的更灵活的操纵能力。

App如果仅仅通过通知栏消息,是无法接触到消息数据本身的。

  1. 可自定义通知提醒的样式(包括提示样式、提示形式如声音等等)

所以大家可以根据不同的使用场景来对推送消息类别进行选择了。


6. 总结


请点赞!因为你的鼓励是我写作的最大动力!

相关文章阅读
史上最全解析Android消息推送解决方案
Android开发:最全面、最易懂的Android屏幕适配解决方案
Android开发:Handler异步通信机制全面解析(包含Looper、Message Queue)
Android开发:顶部Tab导航栏实现(TabLayout+ViewPager+Fragment)
Android开发:底部Tab菜单栏实现(FragmentTabHost+ViewPager)
Android开发:JSON简介及最全面解析方法!
Android开发:XML简介及DOM、SAX、PULL解析对比


欢迎关注Carson_Ho的简书!

不定期分享关于安卓开发的干货,追求短、平、快,但却不缺深度

上一篇下一篇

猜你喜欢

热点阅读