加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

[React Native Android 安利系列]js调用java组件原理

发布时间:2020-12-15 03:25:19 所属栏目:百科 来源:网络整理
导读:欢迎大家收看react-native-android系列教程,跟着本系列教程学习,可以熟练掌握react-native-android的开发,你值得拥有: https://segmentfault.com/blog... 上节说到,我们可以通过react-native的接口,来向js中导出原生的方法,并可以被调用,这节,我们

欢迎大家收看react-native-android系列教程,跟着本系列教程学习,可以熟练掌握react-native-android的开发,你值得拥有:
https://segmentfault.com/blog...

上节说到,我们可以通过react-native的接口,来向js中导出原生的方法,并可以被调用,这节,我们来分析一下,整个过程是怎样的,作为我们系列教程中的一节,其实只是辅助我们更好的开发和理解,不感兴趣的同学可以直接跳过看下一章~

1. 大致原理

react-native中js与java沟通的主要桥梁就是jscore与jni了。下面,我们捋一下整个流程。

1.1 react-native 在java中注册的模块及其方法。在初始化的时候,java通过JNI,注册统一方法到C++中。

1.2 C++在初始化的时候,会注册一个全局的方法,到jscore中。该方法js可以调用,并且会调用C++方法。

1.3 js运行时,会通过nativeModule将原生方法暴露,在js调用方法的时候去调用C++提供的全局方法。

1.4 C++通过js的调用,反射查找java类,并调用java的方法。去告诉java执行某一方法。

1.5 java被调用,执行我们之前注册过的java方法。

2. 图解

以下为整个过程的图解:(拿windows附件里面的画图画的,太难看,大家不要见怪.....)

因为是讲解,本文没有代码例子。如果想更加详细的了解调用关系,及详细代码,推荐参考这篇文章:

https://zhuanlan.zhihu.com/p/...
下节更精彩,我们将来一起看看react-native-android的样式的写法及常见的布局小例子,不要错过哦~

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读