Android与RN远程过程调用的原理是通过通信协议进行远程过程调用。RPC(Remote Procedure Call)是分布式系统常见的一种通信方式,从跨进程到跨物理机已经有几十年历史。
在React Native中,通信机制是一个C++实现的桥,打通了Java和JS,实现了两者的相互调用。
React-native 跨平台原理
参考React-native 跨平台原理
- 主要是通过Virtual DOM来实现跨平台的,只要有Virtual DOM就可以通过不同的渲染引擎来实现view的跨平台。React native就是通过和native之间不断通信来实现UI的绘制等一系列操作,
- js和native通信:Java端会把所有要暴漏的Java类的信息封装成Config传给JS,然后根据Config生成对应Java类的Javascript镜像对象,以及要暴漏的方法,在JS中调用这个镜像对象的方法就会被转发到对应的Java对象上,
- UI main thread 不断询问JS thread并且请求数据,如果数据有变,则更新UI界面。