系列教程之mui的UniPush消息推送功能

本文介绍Push推送功能的实现方法,包括配置SDK参数、云端打包、推送消息类型等内容。讲解了如何通过监听plusready事件来使用Push推送服务,以及如何处理不同类型的推送消息。

Push推送功能需配置SDK参数后提交云端打包后才能生效

官方文档:https://www.html5plus.org/doc/zh_cn/push.htm

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Push Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener('plusready', function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	// 添加监听从系统消息中心点击某条消息启动应用事件
	plus.push.addEventListener('click', function(msg){
		// 分析msg.payload处理业务逻辑 
		alert( 'You clicked: ' + msg.content );
	}, false );
}, false);
	</script>
	</head>
	<body>
	</body>
</html>

 

推送消息类型

通常推送消息分以下两种类型:

  • 通知栏消息(推送通知)
    UniPush推送服务定义好的推送样式、后续动作的推送方式,客户端接收到后显示在系统通知栏,用户点击通知栏消息启动APP(激活到前台)。

  • 透传消息
    即自定义消息,UniPush推送服务只负责消息传递,不做任何处理,客户端在接收到透传消息后需要自己去处理消息的展示方式或后续动作。

Push推送开发指南:https://ask.dcloud.net.cn/article/34

获取APP终端标识

在应用安装后第一次运行时应该调用5+ API的plus.push.getClientInfo方法获取客户端标识,并将此标识提交到开发者的业务服务器进行注册设备,以便在用户登录时可绑定设备,实现向登录用户推送专属消息。

如果推送给指定的手机用户,需要获取cid

//如果获取的cid为空,说明客户端向推送服务器注册还未完成
document.addEventListener('plusready', function(){  
	// 页面加载时触发  
	var pinf = plus.push.getClientInfo();  
	var cid = pinf.clientid;//客户端标识  
	console.log(cid)
}, false ); 

监听推送消息事件

通常在应用入口页面(首页)中调用5+ API的plus.push.addEventListener方法监听消息事件,在回调函数中处理消息的响应业务逻辑,如下示例:

//监听系统通知栏消息点击事件  
plus.push.addEventListener('click', function(msg){  
    //处理点击消息的业务逻辑代码  
}, false);  
//监听接收透传消息事件  
plus.push.addEventListener('receive', function(msg){  
    //处理透传消息的业务逻辑代码  
}, false);

启动回调函数的参数msg为PushMessage对象,保存消息的标题(title)、内容(content)、自定义数据(payload)等。
推送消息包括以下事件类型:

click
用户点击系统通知栏中的消息,APP启动或者激活到前台运行,触发click事件。
receive
客户端接收到透传消息时(在系统通知栏中不显示消息),触发receive事件。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

种麦南山下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值