雖然當前提供推送服務的第三方有很多,例如jpush,友盟,個推,騰訊信鴿等。但是由於大部分第三方只支持原生環境,再加上考慮到ionic平臺下網上已經提供了一套jpush的集成方案,所以我只是針對在jpush下ionic app推送做一些簡要的整理。 廢話不多說,直入主題。
1.註冊jpush的推送賬戶,並創建應用。(聲明,jpush有免費和vip版之分,其中道理,我想大家也懂,付錢的總比不付錢的強,這裏採用的是免費的。)
創建應用界面截圖如下:
測試例子,應用名稱爲jPushDemo,應用包名:cn.kigsir.jpushdemo
需要說明的是,一般真正做app開發,推送服務都是先考慮在內的,這裏的包名再創建ionic項目的時候需要用到。所以,有些已經項目創好了再如何添加包名,筆者沒有調研。
創建成功後,會爲應用生成一個AppKey(後面會經常用到)
2.下載並配置極光推送phonegap插件
2.1運行命令行,切換到你想保存插件的目錄,這裏我們保存到\user\webapp\push\JPush\plugins下,執行cd \user\webapp\push\JPush\plugins然後再執行git clone https://github.com/jpush/jpush-phonegap-plugin.git
2.2打開剛纔安裝插件目錄下的plugin.xml文件,找到<meta-data android:name="JPUSH_APPKEY" android:value="your appkey"/>將剛纔申請到的APPKey填到value中
2.3打開插件目錄下的3.打開插件目錄\src\android\JPushPlugin.java 文件,找到import your.package.name.R,將其替換爲:cn.kigsir.jpushdemo.R。
3.創建ionic項目並添加上面的插件
運行命令行,在你想要創建ionic項目的地方輸入ionic start -a jPushDemo -i cn.kigsir.jpushdemo jpushdemo blank
表明創建一個包名爲cn.kigsir.jpushdemo(與極光中註冊用戶的地方相呼應)的jpushdemo
然後進入項目目錄:
cd jpushdemo
添加android平臺:
ionic platform add android
添加極光推送插件:
ionic plugin add \user\webapp\push\JPush\plugins\jpush-phonegap-plugin
添加device插件
ionic plugin add org.apache.cordova.device
最後在app.js文件中添加啓動推送服務代碼
angular.module('starter', ['ionic']) .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); }); })