1.创建原生模块,定义与实现本地方法,供JS调用
(1)自定义一个类,继承ReactContextBaseJavaModule;
(2)重写getName方法,返回模块名称;
(3)在类中定义方法,方法要用@ReactMethod注解,定义普通参数和Callback参数(Callback用于回调JS端).
例:
public class RNBizModule extends ReactContextBaseJavaModule { //自定义类,继承ReactContextBaseJavaModule
public RNBizModule(ReactApplicationContext reactContext) {
super(reactContext);
}
@Override
public String getName() {
return "RNBizModule"; //返回模块名称,供JS调用
}
@ReactMethod
public void login(String json, Callback callback) { //定义方法,用@ReactMethod注解,表明供JS调用
...
callback.invoke("json内容"); //异步调用JS端回调方法,返回json内容给JS端
}
}
2.注册自定义模块,以便JS端可以调用
(1)自定义类