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