準備工作
https://www.jiguang.cn/accounts/login/form
在極光推送平臺上注冊賬號吆视,新建應用蚤告,獲取AppKey
一、安裝
我的react-native版本是0.42.0
npm install jcore-react-native --save
npm install jpush-react-native --save
react-native link
二少孝、配置
1、android/settings.gradle
添加(已有請忽略)
include ':app', ':jpush-react-native', ':jcore-react-native'
project(':jpush-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jpush-react-native/android')
project(':jcore-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jcore-react-native/android')
2竹宋、android/app/build.gradle
(1)defaultConfig中添加
manifestPlaceholders = [
JPUSH_APPKEY: "yourAPPKey", //在此替換你的APPKey
APP_CHANNEL: "developer-default"? ? //應用渠道號劳澄,默認就好
]
(2)dependencies中添加(已有請忽略)
compile project(':jpush-react-native')
compile project(':jcore-react-native')
3、android/app/src/main/AndroidManifest.xml
參考:https://github.com/zorroyz/jpush/blob/master/android/app/src/main/AndroidManifest.xml?
4蜈七、在android/app/src/main/java/com/項目名/MainActivity中添加
import cn.jpush.android.api.JPushInterface;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
JPushInterface.init(this);
}
@Override
protected void onPause() {
super.onPause();
JPushInterface.onPause(this);
}
@Override
protected void onResume() {
super.onResume();
JPushInterface.onResume(this);
}
@Override
protected void onDestroy() {
super.onDestroy();
}
5秒拔、在android/app/src/main/java/com/項目名/MainApplication中添加
import cn.jpush.reactnativejpush.JPushPackage;
private boolean SHUTDOWN_TOAST = false;
private boolean SHUTDOWN_LOG = false;
new JPushPackage(SHUTDOWN_TOAST, SHUTDOWN_LOG)
需要配置的工作已經(jīng)全部完成,可以在js中使用了
在極光網(wǎng)站上推送測試:
配置中遇到的問題(按此步驟,這些問題全部解決):
1飒硅、
極光后臺錯誤提示:
沒有滿足條件的推送目標
如果是群發(fā):則此應用還沒有一個客戶端用戶注冊砂缩。請檢查 SDK 集成是否正常。
如果是推送給某別名或者標簽:則此別名或者標簽還沒有在任何客戶端SDK提交設置成功三娩。
如果是根據(jù) Registration ID 推送:則此 Registration ID 不存在庵芭。
2、按官網(wǎng)的代碼配置后雀监,啟動不了了
3双吆、打包時出錯
參考:
http://www.reibang.com/p/e7f81b5e1807?