push常见问题我要提意见

Push模块管理推送消息功能,可以实现在线、离线的消息推送,通过plus.push可获取推送消息管理对象。

方法:

对象:

回调方法:

权限:

permissions


{
// ...
"permissions":{
	// ...
	"Push": {
		"description": "消息推送"
	}
}
}
			
属性:

addEventListener

添加推送消息事件监听器


void plus.push.addEventListener( event, listener, Boolean );
				

说明:

添加推送消息事件监听器,当指定推送事件发出时触发。

参数:

返回值:

void : 无

平台支持:

示例:


<!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>
				

clear

清空所有推送消息


void plus.push.clear();
				

说明:

清空系统消息中心所有的推送消息。

参数:

返回值:

void : 无

createMessage

创建本地消息


void plus.push.createMessage( content, payload, option );
				

说明:

在本地直接创建推送消息,并添加到系统消息中心。

参数:

返回值:

void : 无

getAllMessage

获取所有推送消息


PushMessage[] plus.push.getAllMessage();
				

说明:

获取客户端接收到的所有推送消息。 仅包括在系统消息中心显示的推送消息,不包括调用setAutoNotification(false)方法设置不显示推送消息后接收到的消息。

参数:

返回值:

PushMessage : Array[PushMessage]对象,推送消息PushMessage数组。

平台支持:

getClientInfo

获取客户端推送标识信息


ClientInfo plus.push.getClientInfo();
				

说明:

客户端标识信息用于业务服务器下发推送消息时提交给推送服务器的数据,用于说明下发推送消息的接收者(客户端)。需要客户端在第一次运行时提交到业务服务器保存。

参数:

返回值:

ClientInfo : 客户端推送标识信息对象

示例:


<!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
	// 获取客户端标识信息
	var info = plus.push.getClientInfo();
	alert( JSON.stringify( info ) );
	// 添加监听从系统消息中心点击消息启动事件
	plus.push.addEventListener( "click", function ( msg ) {
		// 分析msg.payload处理业务逻辑 
		alert( "You clicked: " + msg.content ); 
	}, false ); 
}, false );
	</script>
	</head>
	<body>
	</body>
</html>
				

setAutoNotification

设置程序是否将消息显示在系统消息中心


void plus.push.setAutoNotification( notify );
				

说明:

默认情况下程序在接收到推送消息后将会在系统消息中心显示,通过此方法可关闭默认行为,接收到推送消息后不在系统消息中心显示,通过addEventListener方法的“receive”事件监听处理接收到的消息。 在这种模式下可通过createMessage方法创建在系统消息中心显示的消息。

参数:

返回值:

void : 无

平台支持:

示例:


<!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.setAutoNotification( false );
}, false );
	</script>
	</head>
	<body>
	</body>
</html>
				

remove

删除推送消息


void plus.push.remove( message )
				

说明:

删除系统消息中心指定的推送消息,可通过getAllMessage方法获取所有的消息后进行操作。

参数:

返回值:

void : 无

平台支持:

ClientInfo

JSON对象,获取的客户端标识信息

属性:

PushMessage

JSON对象,推送消息对象

属性:

MessageOptions

JSON对象,获客户端创建本地消息的参数

属性:

平台支持:

PushReceiveCallback

客户端接收到推动消息的回调函数


void onReceive( msg ) {
	// Recieved push message code.
}
				

参数:

返回值:

void : 无

PushClickCallback

用户点击推送消息事件的回调函数


void onClick( msg ) {
	// Clicked push message code. 
}
				

参数:

返回值:

void : 无