Cordova 集成極光推送


1、申請極光推送賬號,創建應用,配置包等信息,可以獲得AppKey,用於添加Cordova插件,這部分暫不細講,根據官網的提示操作就能完成。

2、命令窗口給cordova項目添加極光推送插件

cordova plugin add jpush-phonegap-plugin --variable APP_KEY=xxxxxxxxxxxxxxxxxxxxx

3、項目中使用

由於項目原本是web改過來的,並沒有使用單頁的方式,所以遇到不少坑,index.js只需要在首頁面加載即可,JPush.js則需要在每個頁面都注冊一遍極光推送事件監聽,不然不會觸發。

index.js    在程序初始化的時候初始化極光推送

console.log("===[開始初始化]===");
var app = {
    initialize: function() {
        console.log("===[注冊初始化事件]===");
        document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
    },
    onDeviceReady: function() {//設備准備完畢
        console.log("===[設備准備就緒]===");
        initJPush();//初始化極光推送
    }
};
app.initialize();

function initJPush(){
        console.log("===[初始化極光推送]===");
        try {
            window.JPush.init();
            window.JPush.setDebugMode(true);
            if (device.platform != "Android") {
                window.JPush.setApplicationIconBadgeNumber(0);
            }
        } catch (exception) {
            alert(exception);
        }
        document.addEventListener("jpush.receiveRegistrationId", function (event) {
            console.log("receiveRegistrationId" + JSON.stringify(event));
        }, false);
    }
   function setAlias(alias){
        console.log("======[alias]====:"+alias);
        window.JPush.setAlias({ sequence: 1, alias: alias },
        function (result) {
            console.log("alias設置成功:"+result.alias);
        }, function (error){
            alert("err:"+error.code);
        });
    }

JPush.js

 document.addEventListener("jpush.openNotification", function(){
    //打開通知
    try {
        //獲取極光推送附帶的參數
        var id= event.extras.id;
        var lx= event.extras.lx;
        //相應的動作
    } catch (exception) {
        console.log("JPushPlugin:onOpenNotification" + exception);
    }
}, false);
document.addEventListener("jpush.receiveNotification", function(){
    //收到通知
    try {
        //獲取極光推送附帶的參數
        var id= event.extras.id;
        var lx= event.extras.lx;
        //相應的動作
    } catch (exception) {
        console.log("JPushPlugin:onReceiveNotification" + exception);
    }
}, false);        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM