RN 与 Native (Android) 之间的通信

Posted Ayinger

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RN 与 Native (Android) 之间的通信相关的知识,希望对你有一定的参考价值。

1. RN调用原生方法的流程图:

  RN与android之间是通过ReactApplication接口建立连接的,ReactApplication提供了React Native运行环境,ReactApplication接口里面实现了getReactNativeHost() 方法,让原生代码可以启动Rect Native程序,通过getReactNativeHost() 方法获取到ReactNativeHost的配置信息(包括主模块名称【从服务器上获取的bundle名称】,模块列表等),通过getPackage() 获取到暴露的原生模块。

  创建供RN通信的原生模块,继承ReactContextBaseJavaModal接口,ReactPackage通过createNativeModules将模块暴露,RN通过 NativeModules.模块名称.方法名称,就可以与原生通信。

 

 

简单来说:创建一个类,继承ReactContextBaseJavaModule类,然后添加到ReacPackage中,RN通过 NativeModules.模块名称.方法名称调用。

 

以上是关于RN 与 Native (Android) 之间的通信的主要内容,如果未能解决你的问题,请参考以下文章

带你彻底看懂React Native和Android原生控件之间的映射关系

《React-Native系列》RN与native交互与数据传递

React Native深入理解Native与RN通信原理

React Native深入理解Native与RN通信原理

React Native深入理解Native与RN通信原理

React Native深入理解Native与RN通信原理