一、相信使用RN 开发的同学们都会遇到这样一个问题,第三方没有支持相关的RN库,或者有一些方法在iOS上可以,但是并没有提供Android相关的方法,那么我们就只能考虑用原生去桥接第三方SDK或者自己实现相关的方法。
二、我们自己实现的方法该如何接入,在JS里面我们又是如何去调用呢?
首先自定义一个react package,我们可以叫它MyReactPackage
/**
* Created by jiawei.zhu on 2017/2/12.
*/
public class MyReactPackage implements ReactPackage {
@Override
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
List<NativeModule> modules = new ArrayList<>();
modules.add(new UpdateJsBundle(reactContext));//添加需要实现功能的JavaModule类,可以添加多个类
return modules;
}
@Override
public List<Class<? extends JavaScriptModule>> createJSModules() {
return Collections.emptyList();
}
@Override
public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
return Collections.emptyList();
}
}
接着我们实现自定义的JavaModule类,在这里我需要实现下载热更新热bundle后重启APP.
1.继承ReactContextBaseJavaModule 类,添加功能方法restart