安卓推送技术手册——使用透传消息的正确姿势
2016-08-03 11:09
579 查看
作者:Hong Jack 链接:https://zhuanlan.zhihu.com/p/20708409 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
目前的消息推送方式主要有两种:通知和透传。
什么是透传?
透传即是透明传送,即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。透传消息,就是消息体格式及内容,对于传递的通道来说是不去过问的,通道只负责消息的传递,对消息不做任何处理,当客户端接收到透传消息后,由客户端自己来决定如何处理消息。正是因为透传消息可以自定义消息体,也可以自定义消息的展示方式及后续动作处理,所以弥补了通知栏消息的一些不足之处(通知栏消息是直接展示出来,相关的动作客户端无法捕获到)。
透传消息主要有如下几个方面的特点: 1. 后台处理,用户无感知。 2. 前台展示,提醒用户。 3. 展示的多样化。
整个透传消息的流程如下:根据个推提供的API接口或在个推开发者平台上推送透传消息,个推服务端接收到推送的消息后,不做任何处理,直接发送给目标用户。当客户端SDK接收到透传消息后,以广播方式发送给客户端,客户端在配置的第三方BroadReceiver里接收到透传消息后进行处理。
透传消息的消息体,可以根据不同的需求传递不同的参数或格式。如传递一个简单的字符串,或传递一个Json字符串,里面根据需求传递需要的字段。
用户无感知的透传,如:更新相关信息,在主界面中相关栏位用红点标识进行弱提醒,推送一条命令用来检测用户是否有登录等。通知栏消息虽然方便的提醒用户,但也在一定程度上给用户带来了打扰,用户无感知的消息推送有时效果会更好。
用户有感知的透传:把透传消息处理成通知栏展示出来,提醒用户方便点击查看相关信息(如个人帐单信息),直接打开应用或跳转到指定的应用界面中(根据透传消息的相关参数来判断跳转到哪一个指定的界面,相关参数传递要打开的界面的类名或Intent即可)等。对于开发者,处理成通知栏的相关事件也是可以捕获的,如通知栏的展示、点击等事件都可以进行捕获,以方便进行后续的操作。
因透传消息可以自己处理成通知栏内容展示,所以通知栏的样式也可以根据需求来做对应的改变。在Android 4.4及以上的系统,通知栏可以是样式丰富的通知栏,放入图片和视频等;可以展示普通的通知,也可以展示多样化的通知。
目前的消息推送方式主要有两种:通知和透传。
什么是透传?
透传即是透明传送,即传送网络无论传输业务如何,只负责将需要传送的业务传送到目的节点,同时保证传输的质量即可,而不对传输的业务进行处理。透传消息,就是消息体格式及内容,对于传递的通道来说是不去过问的,通道只负责消息的传递,对消息不做任何处理,当客户端接收到透传消息后,由客户端自己来决定如何处理消息。正是因为透传消息可以自定义消息体,也可以自定义消息的展示方式及后续动作处理,所以弥补了通知栏消息的一些不足之处(通知栏消息是直接展示出来,相关的动作客户端无法捕获到)。
透传消息主要有如下几个方面的特点: 1. 后台处理,用户无感知。 2. 前台展示,提醒用户。 3. 展示的多样化。
整个透传消息的流程如下:根据个推提供的API接口或在个推开发者平台上推送透传消息,个推服务端接收到推送的消息后,不做任何处理,直接发送给目标用户。当客户端SDK接收到透传消息后,以广播方式发送给客户端,客户端在配置的第三方BroadReceiver里接收到透传消息后进行处理。
透传消息的消息体,可以根据不同的需求传递不同的参数或格式。如传递一个简单的字符串,或传递一个Json字符串,里面根据需求传递需要的字段。
用户无感知的透传,如:更新相关信息,在主界面中相关栏位用红点标识进行弱提醒,推送一条命令用来检测用户是否有登录等。通知栏消息虽然方便的提醒用户,但也在一定程度上给用户带来了打扰,用户无感知的消息推送有时效果会更好。
用户有感知的透传:把透传消息处理成通知栏展示出来,提醒用户方便点击查看相关信息(如个人帐单信息),直接打开应用或跳转到指定的应用界面中(根据透传消息的相关参数来判断跳转到哪一个指定的界面,相关参数传递要打开的界面的类名或Intent即可)等。对于开发者,处理成通知栏的相关事件也是可以捕获的,如通知栏的展示、点击等事件都可以进行捕获,以方便进行后续的操作。
因透传消息可以自己处理成通知栏内容展示,所以通知栏的样式也可以根据需求来做对应的改变。在Android 4.4及以上的系统,通知栏可以是样式丰富的通知栏,放入图片和视频等;可以展示普通的通知,也可以展示多样化的通知。
相关文章推荐
- 安卓推送技术手册——使用透传消息的正确姿势
- 安卓推送技术手册——使用透传消息的正确姿势
- 安卓推送技术手册——透传消息
- 使用tomcat8.0.36实现的websocket技术,实现向单个以及全部用户实时推送消息的功能
- SSE(Server-sent events)技术在web端消息推送和实时聊天中的使用
- 使用极光推送(www.jpush.cn)向安卓手机推送消息【服务端向客户端主送推送】C#语言
- 使用HTML5的Server-sent技术,Go服务器向页面推送消息
- 如何使用Netty技术设计一个百万级的消息推送系统
- 使用极光推送(www.jpush.cn)向安卓手机推送消息【服务端向客户端主送推送】C#语言
- 个推安卓推送——服务端api初级使用手册
- 关于springIDE的安装与使用 【Spring2.0 技术手册补遗 】
- 【原创】《Spring 2.0 技术手册》学习笔记——第三章 Bean、消息、事件
- 如何正确的使用Java序列化技术
- 一起谈.NET技术,ASP.NET中如何正确使用Session
- vc中使用SendMessage正确发送自定义消息的方法
- 使用HTTP发送消息(消息队列技术)
- Eclipse上GIT插件EGIT使用手册之七_推送远程仓库
- 试析在电子商务中如何正确的使用数据挖掘技术
- 使用HTTP发送消息(消息队列技术)
- 实时系统解决方案 TIBCO Rendezvous — 技术介绍(消息中间件|基于数据库的主动推送)