html5在线api,HTML5+ API Reference
Push模塊管理推送消息功能,可以實現(xiàn)在線、離線的消息推送,通過plus.push可獲取推送消息管理對象。
方法:
對象:
ClientInfo: JSON對象,獲取的客戶端標識信息
PushMessage: JSON對象,推送消息對象
MessageOptions: JSON對象,獲客戶端創(chuàng)建本地消息的參數(shù)
回調(diào)方法:
權(quán)限:
permissions
{
// ...
"permissions":{
// ...
"Push": {
"description": "消息推送"
}
}
}
屬性:
cover: 設(shè)定顯示推送消息的模式
可取值true或false,true表示推送消息覆蓋模式顯示,即僅顯示最后接收到的推送消息;false表示在系統(tǒng)消息中心顯示多條消息。
默認值為ture。
平臺支持
Android - 2.2+ (支持)
iOS - 4.3+ (不支持)
:
不支持覆蓋消息,每條信息都在系統(tǒng)消息中心,忽略cover屬性值。
添加推送消息事件監(jiān)聽器
void plus.push.addEventListener( event, listener, Boolean );
說明:
添加推送消息事件監(jiān)聽器,當(dāng)指定推送事件發(fā)出時觸發(fā)。
參數(shù):
type:
(
String
)
必選事件類型
支持事件類型:"click"-從系統(tǒng)消息中心點擊消息啟動應(yīng)用事件;"receive"-應(yīng)用從推送服務(wù)器接收到推送消息事件。
listener:
capture:
(
Boolean
)
可選是否捕獲事件,此處可忽略
返回值:
void
: 無
平臺支持:
Android
- 2.2+
(支持)
iOS
- 4.3+
(支持)
:
在客戶端在運行時收到推送消息觸發(fā)receive事件,離線接收到的推送消息全部進入系統(tǒng)消息中心。
示例:
Push Example// 監(jiān)聽plusready事件
document.addEventListener('plusready', function(){
// 擴展API加載完畢,現(xiàn)在可以正常調(diào)用擴展API
// 添加監(jiān)聽從系統(tǒng)消息中心點擊某條消息啟動應(yīng)用事件
plus.push.addEventListener('click', function(msg){
// 分析msg.payload處理業(yè)務(wù)邏輯
alert( 'You clicked: ' + msg.content );
}, false );
}, false);
清空所有推送消息
void plus.push.clear();
說明:
清空系統(tǒng)消息中心所有的推送消息。
參數(shù):
無
返回值:
void
: 無
創(chuàng)建本地消息
void plus.push.createMessage( content, payload, option );
說明:
在本地直接創(chuàng)建推送消息,并添加到系統(tǒng)消息中心。
參數(shù):
content:
(
String
)
必選
消息顯示的內(nèi)容,在系統(tǒng)通知中心中顯示的文本內(nèi)容。
payload:
(
String
)
可選
消息承載的數(shù)據(jù),可根據(jù)業(yè)務(wù)邏輯自定義數(shù)據(jù)格式。
options:
創(chuàng)建消息的額外參數(shù),參考MessageOptions。
返回值:
void
: 無
獲取所有推送消息
PushMessage[] plus.push.getAllMessage();
說明:
獲取客戶端接收到的所有推送消息。
僅包括在系統(tǒng)消息中心顯示的推送消息,不包括調(diào)用setAutoNotification(false)方法設(shè)置不顯示推送消息后接收到的消息。
參數(shù):
無
返回值:
PushMessage
: Array[PushMessage]對象,推送消息PushMessage數(shù)組。
平臺支持:
Android
- 2.2+
(支持)
iOS
- 4.3+
(不支持)
:
無法獲取系統(tǒng)消息中心的消息列表,調(diào)用此方法返回空數(shù)組。
獲取客戶端推送標識信息
ClientInfo plus.push.getClientInfo();
說明:
客戶端標識信息用于業(yè)務(wù)服務(wù)器下發(fā)推送消息時提交給推送服務(wù)器的數(shù)據(jù),用于說明下發(fā)推送消息的接收者(客戶端)。
通常需要客戶端在第一次運行時獲取并提交到業(yè)務(wù)服務(wù)器綁定。
參數(shù):
無
返回值:
ClientInfo
: 客戶端推送標識信息對象
示例:
Push Example// 監(jiān)聽plusready事件
document.addEventListener(‘plusready’, function(){
// 擴展API加載完畢,現(xiàn)在可以正常調(diào)用擴展API
// 獲取客戶端標識信息
var info = plus.push.getClientInfo();
alert( JSON.stringify( info ) );
// 添加監(jiān)聽從系統(tǒng)消息中心點擊消息啟動事件
plus.push.addEventListener(‘click’, function(msg){
// 分析msg.payload處理業(yè)務(wù)邏輯
alert('You clicked: ' + msg.content);
}, false);
}, false);
異步獲取客戶端推送標識信息
void plus.push.getClientInfoAsync(successCB, errorCB);
說明:
HBuilderX2.5.11+版本新增。
用于解決plus.push.getClientInfo同步獲取可能返回數(shù)據(jù)為空的問題。
客戶端標識信息用于業(yè)務(wù)服務(wù)器下發(fā)推送消息時提交給推送服務(wù)器的數(shù)據(jù),用于說明下發(fā)推送消息的接收者(客戶端)。
通常需要客戶端在第一次運行時獲取并提交到業(yè)務(wù)服務(wù)器綁定。
參數(shù):
successCB:
成功獲取客戶端推送標識信息時觸發(fā)。
errorCB:
獲取客戶端推送標識信息發(fā)生錯誤時觸發(fā)。
返回值:
void
: 無
示例:
function getPushInfo(){
console.log("異步獲取客戶端推送標識信息");
plus.push.getClientInfoAsync(function(info){
console.log('Success');
console.log(JSON.stringify(info));
}, function(e){
console.log('Failed');
console.log(JSON.stringify(e));
})
}
設(shè)置程序是否將消息顯示在系統(tǒng)消息中心
void plus.push.setAutoNotification( notify );
說明:
默認情況下程序在接收到推送消息后將會在系統(tǒng)消息中心顯示,通過此方法可關(guān)閉默認行為,接收到推送消息后不在系統(tǒng)消息中心顯示,通過addEventListener方法的“receive”事件監(jiān)聽處理接收到的消息。
在這種模式下可通過createMessage方法創(chuàng)建在系統(tǒng)消息中心顯示的消息。
參數(shù):
notify:
(
Boolean
)
必選是否自動提示推送消息
可取值true或false,true表示自動顯示推送消息,false則不顯示。默認值為true。
返回值:
void
: 無
平臺支持:
Android
- 2.2+
(支持)
:
如果程序沒有運行時接收到推送消息,則在程序啟動后調(diào)用addEventListener方法監(jiān)聽“receive”事件時返回接收到的消息。
注意:個推平臺僅透傳消息才支持此功能,其它消息依然會顯示到系統(tǒng)消息中心。
iOS
- 4.3+
(不支持)
:
無法修改是否顯示離線推送消息,當(dāng)程序在前臺運行時接收到消息時一定不會添加到系統(tǒng)消息中心,當(dāng)程序在不再前臺運行時一定會添加到系統(tǒng)消息中。
示例:
Push Example// 監(jiān)聽plusready事件
document.addEventListener( "plusready", function(){
// 擴展API加載完畢,現(xiàn)在可以正常調(diào)用擴展API
// 在程序運行時接收到的消息不顯示在系統(tǒng)消息中心
plus.push.setAutoNotification( false );
}, false );
刪除推送消息
void plus.push.remove( message )
說明:
刪除系統(tǒng)消息中心指定的推送消息,可通過getAllMessage方法獲取所有的消息后進行操作。
參數(shù):
message:
返回值:
void
: 無
平臺支持:
Android
- 2.2+
(支持)
iOS
- 4.3+
(不支持)
:
無法對單條消息進行刪除操作,可調(diào)用clear()方法清空所有消息。
JSON對象,獲取的客戶端標識信息
屬性:
id: (String
類型
)推送通道標識
目前支持以下推送通道:
"igexin" - 表示個推推送;
"mipush" - 表示小米推送;
"unipush" - 表示DCloud UniPush。
token: (String
類型
)設(shè)備令牌(iOS設(shè)備唯一標識),用于APNS服務(wù)推送中標識設(shè)備的身份
平臺支持
Android - 2.2+ (支持)
:
設(shè)備的唯一標識號,通常與clientid值一致。
iOS - 4.5+ (支持)
:
設(shè)備的DeviceToken值,向APNS服務(wù)器發(fā)送推送消息時使用。
clientid: (String
類型
)推送服務(wù)令牌(設(shè)備唯一標識),用于標識推送信息接收者身份
第三方推送服務(wù)器管理的設(shè)備唯一標識,在iOS平臺此值通常與token不同;在其它平臺此值通常與token值一致。
此值與設(shè)備及應(yīng)用都相關(guān),即不同的apk/ipa安裝到同一臺設(shè)備上的值都不相同。
appid: (String
類型
)第三方推送服務(wù)的應(yīng)用標識
第三方推送服務(wù)器管理的應(yīng)用標識,通常需要在第三方推送服務(wù)器平臺進行注冊獲取。
appkey: (String
類型
)第三方推送服務(wù)器的應(yīng)用鍵值
第三方推送服務(wù)器管理的應(yīng)用鍵值,通常需要在第三方推送服務(wù)器平臺進行注冊獲取。
JSON對象,推送消息對象
屬性:
title: (String
類型
)推送消息顯示的標題
平臺支持
Android - 2.2+ (支持)
iOS - ALL (支持)
:
。
content: (String
類型
)推送消息顯示的內(nèi)容
payload: (JSON
類型
)推送消息承載的數(shù)據(jù)
如果推送消息中傳輸?shù)臄?shù)據(jù)不符合JSON格式,則作為String類型數(shù)據(jù)保存。
aps: (JSON
類型
)Apple APNS推送協(xié)議數(shù)據(jù)
平臺支持
Android - 2.2+ (不支持)
:
不支持此數(shù)據(jù),返回值為undefined。
iOS - 5.0+ (支持)
:
僅封裝標準APNS協(xié)議中的數(shù)據(jù),其它數(shù)據(jù)封裝在payload中。如果是通過本地API創(chuàng)建的消息此屬性值則為undefined。
JSON對象,獲客戶端創(chuàng)建本地消息的參數(shù)
屬性:
appid: (String
類型
)要啟動流應(yīng)用的appid
僅在流應(yīng)用環(huán)境中有效,默認值為當(dāng)前流應(yīng)用的appid。
平臺支持
Android - ALL (不支持)
iOS - ALL (不支持)
cover: (Boolean
類型
)是否覆蓋上一次提示的消息
可取值true或false,true為覆蓋,false不覆蓋。
默認為false。
平臺支持
Android - ALL (支持)
iOS - 10.0+ (支持)
:
iOS10以下系統(tǒng)不支持覆蓋。
delay: (Number
類型
)提示消息延遲顯示的時間
當(dāng)設(shè)備接收到推送消息后,可不立即顯示,而是延遲一段時間顯示,延遲時間單位為s,默認為0s,立即顯示。
icon: (String
類型
)推送消息的圖標
本地圖片地址,相對路徑 - 相對于當(dāng)前頁面的host位置,如"a.jpg",注意當(dāng)前頁面為網(wǎng)絡(luò)地址則不支持; 絕對路徑 - 系統(tǒng)絕對路徑,如Android平臺"/sdcard/logo.png",此類路徑通常通過其它5+ API獲取的; 擴展相對路徑URL(RelativeURL) - 以"_"開頭的相對路徑,如"_www/a.jpg"; 本地路徑URL - 以“file://”開頭,后面跟隨系統(tǒng)絕對路徑。
平臺支持
Android - 2.3+ (支持)
iOS - ALL (不支持)
:
不支持自定義圖片,固定使用應(yīng)用圖標。
sound: (String
類型
)推送消息的提示音
顯示消息時的播放的提示音,可取值:
“system”-表示使用系統(tǒng)通知提示音;
“none”-表示不使用提示音;
默認值為“system”。
平臺支持
Android - 2.3+ (支持)
iOS - ALL (支持)
:
當(dāng)程序在前臺運行時,提示音不生效。
注:通常應(yīng)該設(shè)置延遲時間,當(dāng)程序切換到后臺才創(chuàng)建本地推送消息時生效。
title: (String
類型
)推送消息的標題
在系統(tǒng)消息中心顯示的通知消息標題,默認值為程序的名稱。
平臺支持
Android - ALL (支持)
iOS - 10+ (支持)
:
iOS10及以上版本支持設(shè)置標題,低版本忽略此屬性。
subtitle: (String
類型
)推送消息的副標題
平臺支持
Android - ALL (不支持)
iOS - 10+ (支持)
:
iOS10及以上版本支持設(shè)置副標題,低版本忽略此屬性。
when: (Date
類型
)消息上顯示的提示時間
默認為當(dāng)前時間,如果延遲顯示則使用延時后顯示消息的時間。
平臺支持
Android - ALL (支持)
iOS - ALL (不支持)
:
不支持設(shè)定消息的顯示時間,由系統(tǒng)自動管理消息的創(chuàng)建時間。
客戶端接收到推送消息的回調(diào)函數(shù)
void onReceive( msg ) {
// Recieved push message code.
}
參數(shù):
msg:
(
String
)
必選接收到的推送信息msg
返回值:
void
: 無
用戶點擊推送消息事件的回調(diào)函數(shù)
void onClick( msg ) {
// Clicked push message code.
}
參數(shù):
msg:
(
String
)
必選用戶點擊的推送信息msg
返回值:
void
: 無
異步獲取客戶端推送標識信息成功的回調(diào)函數(shù)
void onSuccess( info ) {
// getClientInfo success.
}
說明:
異步獲取客戶端推送標識信息成功時回調(diào)。
參數(shù):
info:
返回值:
void
: 無
異步獲取客戶端推送標識信息失敗的回調(diào)函數(shù)
void onError(error){
// Handle the error
var code = error.code; // 錯誤編碼
var message = error.message; // 錯誤描述信息
}
說明:
異步獲取推送標識信息失敗時觸發(fā)。
參數(shù):
error:
(
Exception
)
可選錯誤信息
可通過error.code(Number類型)獲取錯誤編碼;
可通過error.message(String類型)獲取錯誤描述信息。
返回值:
void
: 無
總結(jié)
以上是生活随笔為你收集整理的html5在线api,HTML5+ API Reference的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: qt私有信号拙见
- 下一篇: html form int,is_int