咨詢多次客服統一給的答案都是下面這種,但其實是不對的,因為我寫的是app端,app 沒有 document window 之類的方法。
document.addEventListener('plusready', function(){ // 頁面加載時觸發 var pinf = plus.push.getClientInfo(); var cid = pinf.clientid;//客戶端標識 }, false );
經過尋找在網上找到了一篇關於cid 的獲取方法,親測可用
方案一:
let pinf = plus.push.getClientInfo(); let cid = pinf && pinf.clientid || ''; //客戶端標識
有可能取不到clientId,或者為‘undefined’ ‘null' 等字符串
由於可能取不到,然后使用方案二,異步獲取
plus.push.getClientInfoAsync((info) => { cid = info.clientid; }, err => { });
觸發異步回調的前提條件是,需要在manifest.json 在ios下配置
"pushRegisterMode" : "manual"
當app 打開的時候會彈出權限框,如果選擇了否,同樣會獲取不到clientID