ReactNative 桥接极光推送JPush(iOS、Android)

我用的是极光2.2.0版本。关于安卓和ios的推送原理,这里不再赘述。以下是我在项目中的用法,定制化的东西会慢慢补上。

iOS

1.导入SDK 极光iOS SDK 官方文档

  • 解压下载的SDK,把jpush-ios-2.2.0.a和JPUSHService.h导入到目录下,并创建Jpush.h/.m文件


    ReactNative 桥接极光推送JPush(iOS、Android)_第1张图片
    文件目录.png
  • 参照文档导入依赖
  • Xcode8配置内容


    ReactNative 桥接极光推送JPush(iOS、Android)_第2张图片
    文档上扒下来的.png
  • 配置info.plist


    ReactNative 桥接极光推送JPush(iOS、Android)_第3张图片
    文档截图.png

2.配置appDelegate

  • 导入头文件,此处跟文档上不同,因为要写桥接,所以不需要在appDelegate中设置

import "JPUSHService.h"
import
import "Jpush.h"

  • 在didFinishLaunchingWithOptions添加初始化代码

[JPUSHService setupWithOption:launchOptions appKey:appKey channel:channel apsForProduction:isProduction advertisingIdentifier:advertisingId];

  • 上报DeviceToken
  • (void)application:(UIApplication *)application
    didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    [JPUSHService registerDeviceToken:deviceToken];
    }
  • 注册失败(选填)


    ReactNative 桥接极光推送JPush(iOS、Android)_第4张图片
    注册失败.png

3.桥接文件Jpush

  • .h文件,因为需要在收到通知后在js端做处理,所以要继承RCTEventEmitter,可以给js发送事件/添加监听。


    ReactNative 桥接极光推送JPush(iOS、Android)_第5张图片
    h.png

Android

你可能感兴趣的:(ReactNative 桥接极光推送JPush(iOS、Android))