ionic手机应用如何添加极光推送(以ioniclub应用为例)

2015-06-26 19:07:00
hainuo
原创 9021
摘要:ionic添加极光推送
先列一下参考资料  最全的是官方的这个例子官方的例子最好 [https://github.com/jpush/jpush-phonegap-plugin](https://github.com/jpush/jpush-phonegap-plugin)然后内是董大大的文章[http://ionichina.com/topic/54f96e7b59a9bdef119234a1](http://ionichina.com/topic/54f96e7b59a9bdef119234a1)看完后应该有大体概念了。那么我们开始在cordova 5.0下制作了。首先是按照官方文档,在董大大的稿子类似。第一步下载下jpush 可以通过gitclone也可以直接电加下载zip解压 第二步按照文档修改appkey和package name    董大的文章有详细描述如何创建极光推送应用。在修改JPushPlugin.java文件的时候一定要记住最后的.R不要给去掉了啊。第三步切换到董大的ioniclub 项目目录`ioinc plugin add path/to/jpush/path`第四步```ionic plugin add  cordova-plugin-device  #注意这里的plugin不是 org.apache.cordova.device  原因是改名了  所以这里董大的文章是错误的  可以通过执行命令查看输出消息来验证-> % ionic plugin add org.apache.cordova.deviceUpdated the hooks directory to have execute permissionsWARNING: org.apache.cordova.device has been renamed to cordova-plugin-device. You may not be getting the latest version! We suggest you `cordova plugin rm org.apache.cordova.device` and `cordova plugin add cordova-plugin-device`.Fetching plugin "org.apache.cordova.device" via cordova plugins registry```第五步 就是打包了。。。```ionic platform add androidionic build android```插入你的手机```ionic run android```ps:如果你的手机接上后不能用需要配置adbpath在path中增加adb的路径到$PATH中 我的路径是这样设置的 Mac 10.10.3   以下亮条是增加的adb和android两个命令工具```export PATH=$PATH:~/Library/Android/sdk/platform-tools  export PATH=$PATH:~/Library/Android/sdk/tools```附件中的包是我在ioniclub中增加了极光推送后的debug包,欢迎大家下载测试当然会有一个弹窗,这个弹窗会显示你的极光推送的```registrationID```对app.js文件的修改 增加一个run```.run(function ($ionicPlatform) {        $ionicPlatform.ready(function () {// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard// for form inputs)            if (window.cordova && window.cordova.plugins.Keyboard) {                cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);            }            if (window.StatusBar) {                StatusBar.styleDefault();            }//启动极光推送服务            window.plugins.jPushPlugin.init();//调试模式            window.plugins.jPushPlugin.setDebugMode(true);            var onGetRegistradionID = function(data) {                try{                    alert("JPushPlugin:registrationID is"+data);                    model.console.push("JPushPlugin:registrationID is " + data);                }                catch(exception){                    model.console.push(exception);                }            };            window.plugins.jPushPlugin.getRegistrationID(onGetRegistradionID);        });    })```对java文件文件位置 在`platforms/android/src/com/ionichina/ioniclub/MainActiovity.java`文件作如下修改在`MainActivity`类中增加这两个方法就可以了  不增加的话会在手机提示没有安装统计方法```@Overrideprotected void onResume() {    super.onResume();    JPushInterface.onResume(this);}@Overrideprotected void onPause() {    super.onPause();    JPushInterface.onPause(this);}```对index.html的修改  将极光推送的js脚本从`/plugins/cn.jpush.phonegap.JPushPlugin/www`目录下copy到`www/js`目录下然后对`index.html` head部分增加删掉JPushPlugin.js最末一行 在ionic serve调试时,console.error报错,所以我将error改为了log搜索‘console.error’修改为log------欢迎大家反馈 
发表评论
捌 减 柒 =
评论通过审核后显示。