ReactNative 整合极光推送jpush-react-native(Android端)

准备工作

https://www.jiguang.cn/accounts/login/form

在极光推送平台上注册账号,新建应用,获取AppKey


ReactNative 整合极光推送jpush-react-native(Android端)_第1张图片

一、安装

我的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"    //应用渠道号,默认就好

]


ReactNative 整合极光推送jpush-react-native(Android端)_第2张图片

(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 


ReactNative 整合极光推送jpush-react-native(Android端)_第3张图片

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();

}


ReactNative 整合极光推送jpush-react-native(Android端)_第4张图片

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)


ReactNative 整合极光推送jpush-react-native(Android端)_第5张图片

需要配置的工作已经全部完成,可以在js中使用了


在极光网站上推送测试:


ReactNative 整合极光推送jpush-react-native(Android端)_第6张图片
ReactNative 整合极光推送jpush-react-native(Android端)_第7张图片
ReactNative 整合极光推送jpush-react-native(Android端)_第8张图片


ReactNative 整合极光推送jpush-react-native(Android端)_第9张图片

配置中遇到的问题(按此步骤,这些问题全部解决):

1、

极光后台错误提示:

没有满足条件的推送目标

如果是群发:则此应用还没有一个客户端用户注册。请检查 SDK 集成是否正常。

如果是推送给某别名或者标签:则此别名或者标签还没有在任何客户端SDK提交设置成功。

如果是根据 Registration ID 推送:则此 Registration ID 不存在。


2、按官网的代码配置后,启动不了了

3、打包时出错

参考:

http://www.jianshu.com/p/e7f81b5e1807 

http://hao.jser.com/archive/15705/ 

https://github.com/zorroyz/jpush 

你可能感兴趣的:(ReactNative 整合极光推送jpush-react-native(Android端))