React Native JPush component for Android and iOS
npm install jpush-react-native1. 从RN-JPush2.7.5开始,重新支持TypeScript
2. 由于RN-JCore1.6.0存在编译问题,从RN-JCore1.7.0开始,还是需要在AndroidManifest.xml中添加配置代码,具体参考 配置-2.1 Android
```
npm install jpush-react-native --save
* 注意:如果项目里没有jcore-react-native,需要安装
``
npm install jcore-react-native --save
安装完成后连接原生库
进入到根目录执行
react-native link
或
react-native link jpush-react-native
react-native link jcore-react-native
* build.gradle
``
android {
defaultConfig {
applicationId "yourApplicationId" //在此替换你的应用包名
...
manifestPlaceholders = [
JPUSH_APPKEY: "yourAppKey", //在此替换你的APPKey
JPUSH_CHANNEL: "yourChannel" //在此替换你的channel
]
}
}
``
dependencies {
...
implementation project(':jpush-react-native') // 添加 jpush 依赖
implementation project(':jcore-react-native') // 添加 jcore 依赖
}
* setting.gradle
``
include ':jpush-react-native'
project(':jpush-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jpush-react-native/android')
include ':jcore-react-native'
project(':jcore-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jcore-react-native/android')
* AndroidManifest.xml
``
android:value="${JPUSH_CHANNEL}" />
android:value="${JPUSH_APPKEY}" />
``
pod install
* 注意:如果项目里使用pod安装过,请先执行命令
``
pod deintegrate
* Libraries
``
Add Files to "your project name"
node_modules/jcore-react-native/ios/RCTJCoreModule.xcodeproj
node_modules/jpush-react-native/ios/RCTJPushModule.xcodeproj
* Capabilities
``
Push Notification --- ON
* Build Settings
``
All --- Search Paths --- Header Search Paths --- +
$(SRCROOT)/../node_modules/jcore-react-native/ios/RCTJCoreModule/
$(SRCROOT)/../node_modules/jpush-react-native/ios/RCTJPushModule/
* Build Phases
```
libz.tbd
libresolv.tbd
UserNotifications.framework
libRCTJCoreModule.a
libRCTJPushModule.a
参考:App.js
详见:index.js
* 集成前务必将example工程跑通
* 如有紧急需求请前往极光社区
* 上报问题还麻烦先调用JPush.setLoggerEnable(true},拿到debug日志