ionic极光推送

作者: 米兰铁匠不打铁 | 来源:发表于2017-07-29 14:54 被阅读186次


    首先,极光官网注册账号

    需要去这里注册https://www.jiguang.cn

    注册成功获取AppKey

    备注填写应用包名规范点,在项目还要用那

    安装插件

    通过 Cordova Plugins 安装,要求 Cordova CLI 5.0+:

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

    或直接通过 url 安装:

    cordova plugin add https://github.com/jpush/jpush-phonegap-plugin.git --variable APP_KEY=your_jpush_appkey

    或下载到本地安装:

    cordova plugin add Your_Plugin_Path  --variable APP_KEY=your_jpush_appkey

    app.js

    $ionicPlatform.ready(function() {

    //初始化

      window.plugins.jPushPlugin.init();

    if(ionic.Platform.isIOS()) {

      window.plugins.jPushPlugin.setDebugModeFromIos();

      window.plugins.jPushPlugin.setApplicationIconBadgeNumber(0);

      window.plugins.jPushPlugin.resetBadge();

      $ionicPlatform.on('resume',function() {

      window.plugins.jPushPlugin.setApplicationIconBadgeNumber(0);

      window.plugins.jPushPlugin.resetBadge();

    })

    }else if(ionic.Platform.isAndroid()) {

       window.plugins.jPushPlugin.setDebugMode(true);

       window.plugins.jPushPlugin.setStatisticsOpen(true);

    }

    document.addEventListener("jpush.openNotification",onOpenNotification,false);

    document.addEventListener("jpush.receiveMessage",onReceiveMessage,false);

    document.addEventListener("jpush.receiveNotification",onReceiveNotification,false);

    })

    //$ionicPlatform.on('resume',function() {})中是手机进入前台后清除角标,resetBadge可以解决ios上面角标累加后不清零的问题。

    //如果不添加$ionicPlatform.on('resume',function() {})中的方法,也可以修改插件AppDelegate+JPush.m,

    将上图所示的方法中解除注释,并在applicationDidEnterBackground方法中添加[JPUSHService resetBadge];

    最后

    var onOpenNotification=function(event) {

     if (ionic.Platform.isAndroid()) {

       for(var key in event.extras){

        alert(key+':'+event.extras[key]);

      }

     } else if (ionic.Platform.isIOS()) {

        for(var key in event.aps){

          alert(key+':'+event.aps[key]);

       }

     }

    };

    var  onReceiveMessage=function(event) {

        //alert('onReceiveMessage');

    }

    var  onReceiveNotification=function() {

      //alert('onReceiveNotification');

    }

    参考demo:https://github.com/jpush/jpush-phonegap-plugin/blob/master/example/index.html

    插件地址:https://github.com/jpush/jpush-phonegap-plugin

    更多功能查看官方demo。

    相关文章

      网友评论

        本文标题:ionic极光推送

        本文链接:https://www.haomeiwen.com/subject/mzxclxtx.html