react native 整合極光推送(Android)
最近項目中需要用到通知,綜合比較決定使用極光推送,看了看網上的教程好像都沒有一個整合好的例子,或者是步驟有些問題,自己也折騰了很長時間,在此把極光推送配置的步驟整理一下,提供給各位有需要的朋友
一.安裝 我的react native使用的是最新版本0.43.3,對應的極光推送需要同時安裝jpush和jcore,
npminstall jcore-react-native —save
npminstall jpush-react-native --save
react-native link
二.配置
1、在android/app/build.gradle裏android>>defaultConfig中加入:
manifestPlaceholders = [
JPUSH_APPKEY:"yourAppKey",//在極光推送後臺申請的APPKey
APP_CHANNEL:"developer-default"]
在dependencies中加入:(link後自動加入,需檢查)
compileproject(':jpush-react-native')// 添加 jpush 依賴
compileproject(':jcore-react-native')
2、在項目的settings.gradle中加入(link後自動加入,需檢查):
include':app',':jpush-react-native',':jcore-react-native’
project(':jpush-react-native').projectDir =newFile(rootProject.projectDir,'../node_modules/jpush-react-native/android')
project(':jcore-react-native').projectDir =newFile(rootProject.projectDir,'../node_modules/jcore-react-native/android')
3、在android/app/manifests/AndroidManifests.xml的加入:
<meta-data android:name=“JPUSH_CHANNEL” android:value=“${APP_CHANNEL}”/>
<meta-data android:name=“JPUSH_APPKEY” android:value=“${JPUSH_APPKEY}">
並在上方加入極光推送權限:
4、在MainActivity中加入如下代碼:
@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
JPushInterface.init(this);
}
@OverrideprotectedvoidonPause() {super.onPause();
JPushInterface.onPause(this);
}
@OverrideprotectedvoidonResume() {super.onResume();
JPushInterface.onResume(this);
}
@OverrideprotectedvoidonDestroy() {super.onDestroy();
}
5、在MainApplication類里加入如下代碼:
privatebooleanSHUTDOWN_TOAST =false;
privatebooleanSHUTDOWN_LOG =false;
在getPackages()方法中加入:
newJPushPackage(SHUTDOWN_TOAST, SHUTDOWN_LOG)
至此,native端需要配置的工作已經全部完成,此時就可以用js進行調用。