推送中的消息和通知的区别
来源:互联网 发布:在淘宝买iphone 编辑:程序博客网 时间:2024/06/10 20:46
转载:http://www.cnblogs.com/benwu/p/5272660.html
关于通知和消息的区别:
通知:发送后会在系统通知栏收到展现,同时响铃或振动提醒用户。 ( mqtt不知道能不能发送通知,还在研究中...)
消息:以透传的形式传递给客户端,无显示,发送后不会在系统通知栏展现,第三方应用后需要开发者写代码才能看到。
什么是透传?透传即是透明传送,即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。透传消息,就是消息体格式及内容,对于传递的通道来说是不去过问的,通道只负责消息的传递,对消息不做任何处理,当客户端接收到透传消息后,由客户端自己来决定如何处理消息。正是因为透传消息可以自定义消息体,也可以自定义消息的展示方式及后续动作处理,所以弥补了通知栏消息的一些不足之处(通知栏消息是直接展示出来,相关的动作客户端无法捕获到)。
透传消息主要有如下几个方面的特点:
1. 后台处理,用户无感知。
2. 前台展示,提醒用户。
3. 展示的多样化。
整个透传消息的流程如下:
根据个推提供的API接口或在个推开发者平台上推送透传消息,个推服务端接收到推送的消息后,不做任何处理,直接发送给目标用户。
当客户端SDK接收到透传消息后,以广播方式发送给客户端,客户端在配置的第三方BroadReceiver里接收到透传消息后进行处理。
透传消息的消息体,可以根据不同的需求传递不同的参数或格式。如传递一个简单的字符串,或传递一个Json字符串,里面根据需求传递需要的字段。
用户无感知的透传,如:更新相关信息,在主界面中相关栏位用红点标识进行弱提醒,推送一条命令用来检测用户是否有登录等。通知栏消息虽然方便的提醒用户,但也在一定程度上给用户带来了打扰,用户无感知的消息推送有时效果会更好。
用户有感知的透传:把透传消息处理成通知栏展示出来,提醒用户方便点击查看相关信息(如个人帐单信息),直接打开应用或跳转到指定的应用界面中(根据透传消息的相关参数来判断跳转到哪一个指定的界面,相关参数传递要打开的界面的类名或Intent即可)等。对于开发者,处理成通知栏的相关事件也是可以捕获的,如通知栏的展示、点击等事件都可以进行捕获,以方便进行后续的操作。
因透传消息可以自己处理成通知栏内容展示,所以通知栏的样式也可以根据需求来做对应的改变。在Android 4.4及以上的系统,通知栏可以是样式丰富的通知栏,放入图片和视频等;可以展示普通的通知,也可以展示多样化的通知。
参考: http://www.oschina.net/question/1782938_238427
- 推送中的消息和通知的区别
- APNs通知与应用内消息(推送通知和透传消息)的区别
- 极光推送通知和消息
- 极光推送(JPush)通知与自定义消息的区别
- 推送通知的跳转处理和消息提醒
- ios中的通知和推送
- APP消息推送:通知和透传
- Android消息推送通知的原理:
- IOS 推送通知和消息 php做推送服务端
- iOS 消息推送通知
- app推送消息通知
- iOS开发中的推送通知的讲解
- SignalR 实时通知消息并行推送和批量存储实现
- iOS集成极光推送 通知 和 自定义消息
- [IOS 推送消息] 将旧的推送通知从通知中心移除掉
- iOS - 消息推送, 远程通知
- Android 消息推送通知指南
- iOS8推送消息、注册通知
- 获取SHA1, 输入命令后显示keytool 不是内部或外部命令
- WebStorm 开发javaScript
- unity3d异步加载场景
- iOS 上传App Store经验
- 做一个完整的Java Web项目需要掌握的技能
- 推送中的消息和通知的区别
- 使用JavaScriptCore在JS和OC间通信
- HBase安装与配置问题
- PHP 连接mysql数据库
- Unity3D鼠标选中物品并拖动物品的方法
- Could not retrieve transation read-only status server
- 给你一个团队,这 5 条经验教你轻松当领导
- NGUI自适应
- Codeforces Round #359 (Div. 2) B. Little Robber Girl's Zoo