目前市场上的消息推送方式有两种:通知和透传。
什么是透传?透传即是透明传送,即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。透传消息,就是消息体格式及内容,对于传递的通道来说是不去过问的,通道只负责消息的传递,对消息不做任何处理,当客户端接收到透传消息后,由客户端自己来决定如何处理消息。正是因为透传消息可以自定义消息体,也可以自定义消息的展示方式及后续动作处理,所以弥补了通知栏消息的一些不足之处(通知栏消息是直接展示出来,相关的动作客户端无法捕获到)。
 
透传消息主要有如下几个方面的特点:
1. 后台处理,用户无感知。
2. 前台展示,提醒用户。
3. 展示的多样化。

整个透传消息的流程如下:根据个推提供的API接口或在个推开发者平台上推送透传消息,个推服务端接收到推送的消息后,不做任何处理,直接发送给目标用户。当客户端SDK接收到透传消息后,以广播方式发送给客户端,客户端在配置的第三方BroadReceiver里接收到透传消息后进行处理。

透传消息的消息体,可以根据不同的需求传递不同的参数或格式。如传递一个简单的字符串,或传递一个Json字符串,里面根据需求传递需要的字段。
用户无感知的透传,如:更新相关信息,在主界面中相关栏位用红点标识进行弱提醒,推送一条命令用来检测用户是否有登录等。通知栏消息虽然方便的提醒用户,但也在一定程度上给用户带来了打扰,用户无感知的消息推送有时效果会更好。
用户有感知的透传:把透传消息处理成通知栏展示出来,提醒用户方便点击查看相关信息(如个人帐单信息),直接打开应用或跳转到指定的应用界面中(根据透传消息的相关参数来判断跳转到哪一个指定的界面,相关参数传递要打开的界面的类名或Intent即可)等。对于开发者,处理成通知栏的相关事件也是可以捕获的,如通知栏的展示、点击等事件都可以进行捕获,以方便进行后续的操作。
因透传消息可以自己处理成通知栏内容展示,所以通知栏的样式也可以根据需求来做对应的改变。在Android 4.4及以上的系统,通知栏可以是样式丰富的通知栏,放入图片和视频等;可以展示普通的通知,也可以展示多样化的通知。

APP消息推送:通知和透传的更多相关文章

  1. APP消息推送是否进入消息中心和click、receive事件分析

    前端时间研究APP消息推送的机制,由于机型.版本的碎片化,消息推送的机制不太好理解,所以总结下,放在博文里以备后续查阅. 安卓Android系统的消息推送:     安卓 推送方式 应用状态 类型 消 ...

  2. .NET向APNS苹果消息推送通知

    一.Apns简介: Apns是苹果推送通知服务. 二.原理: APNs会对用户进行物理连接认证,和设备令牌认证(简言之就是苹果的服务器检查设备里的证书以确定其为苹果设备):然后,将服务器的信息接收并且 ...

  3. 淘宝APP消息推送模型

    为什么到了2020年,"统一推送联盟"依旧无法起显著作用? - 知乎 https://www.zhihu.com/question/370632447 https://mp.wei ...

  4. 浅谈APP消息推送

    作为移动端APP产品运营最重要的运营手段,消息推送(push)被越来越多的APP厂商所重视,在信息泛滥的移动互联网时代,手机APP应用安装得越来越多,小小的手机屏幕每天收到的消息推送也越来越多,站在用 ...

  5. How Javascript works (Javascript工作原理) (九) 网页消息推送通知机制

    个人总结: 1.介绍了网页消息推送通知机制 全文地址:https://github.com/Troland/how-javascript-works 这是 JavaScript 工作原理的第九章. 现 ...

  6. IOS开发之实现App消息推送

    转自:http://blog.csdn.net/shenjie12345678/article/details/41120637 第一部分 首先第一步当然是介绍一下苹果的推送机制(APNS)咯(ps: ...

  7. IOS开发之实现App消息推送(最新)

    好久没有写过博客啦,今天就由本菜鸟给大家做一个简单的IOSApp消息推送教程吧!一切从0开始,包括XCode6, IOS8, 以及苹果开发者中心最新如何注册应用,申请证书以及下载配置概要文件,相信很多 ...

  8. IOS8开发之实现App消息推送

    第一部分 Apple Push Notification Service 首先第一步当然是介绍一下苹果的推送机制(APNS)咯(ps:其实每一篇教程都有),先来看一张苹果官方对其推送做出解释的概要图. ...

  9. vue中使用stompjs实现mqtt消息推送通知

    最近在研究vue+webAPI进行前后端分离,在一些如前端定时循环请求后台接口判断状态等应用场景用使用mqtt进行主动的消息推送能够很大程度的减小服务端接口的压力,提高系统的效率,而且可以利用mqtt ...

随机推荐

  1. Python自动化之sqlalchemy关联查询

    外键关联 from sqlalchemy import ForeignKey from sqlalchemy.orm import relationship class Address(Base): ...

  2. ext grid 子表格

    Ext.define('app.view.main.biz.customer.receipt.followup.FollowUpActionPanel', { extend: 'Ext.grid.Pa ...

  3. MyEclipse 15 集成SVN

    一.在线更新 地址:http://subclipse.tigris.org/update_1.8.x 二.手动安装

  4. C#中委托演变的的三个阶段

    命名函数 匿名方法 lambda表达式 委托是一种可以把引用存储为函数的类型,定义了委托后,就可以声明该委托类型的变量,接着把这个变量初始化为与委托有相同返回类型和参数列表的函数引用,之后就可以使用委 ...

  5. Debian安装python-rrdtool

    ... sudo apt-get install rrdtool sudo apt-get install librrd-dev sudo apt-get install python-dev pip ...

  6. Kendo UI

    http://www.cnblogs.com/libingql/category/585455.html http://www.scala-china.net/discuz/forum.php?mod ...

  7. python之errno

    http://www.cnblogs.com/Security-Darren/p/4168392.html errno.EWOULDBLOCK 操作将会阻塞

  8. XPath 教程

    http://www.w3school.com.cn/xpath/xpath_syntax.asp

  9. java 入门 第三季1

    异常和异常体系 java异常体系 throwable:error:线程死锁,内存溢出 excepiton:rumtimeException运行时异常:非检查异常 检查异常:文件异常IOExceptio ...

  10. ABAP 弹窗案例

    DATA:  WL_ANSWER  TYPE C. CALL FUNCTION 'POPUP_TO_CONFIRM'    EXPORTING     TEXT_QUESTION            ...