美文网首页
RN(React Native) 与 Android 初识

RN(React Native) 与 Android 初识

作者: 东方灵龙 | 来源:发表于2018-05-23 18:17 被阅读28次

    RN(React Native)

    源码地址: https://github.com/facebook/react-native

    简介

    本文主要讲述RN在Android系统上是如何进行初始化,介绍也会集中在Java语言上

    1. 主要类介绍

    1.1 ReactContext
    ReactContext继承于ContextWrapper,是RN应用的上下文,可以通过getContext()方法或侧,通过它可以访问RN核心类的实现。
    1.2 ReactNativeHost
    RN的配置类,用于设定JSBundleFile,BundleAssetName,Dev环境,RedBox,JSMainModuleName等信息,最重要的是它拥有一个ReactInstanceManager的实例对象,可以用来管理RN的很多操作;
    1.3 ReactInstanceManager
    ReactInstanceManager是RN应用的总管理类,创建ReactContext、CatalystInstance等类,解析ReactPackage生成映射表,并且配合ReactRootView管理View的创建以及生命周期等功能;
    1.4 CatalystInstance
    CatalystInstance是RN的应用Java层,C++层,JS层通讯总管理类,总管Java层,JS层和谐Module映射表与回调,是三端通讯的入口与桥梁
    1.5 ReactActivity和ReactFragmentActivity
    RN继承Android原生的Activity,用来设置Activity的内容,创建代理类ReactActivityDelegate,载入RN页面loadAPP
    1.6 ReactActivityDelegate
    RN相关Activity的代理类,从创建ReactRootView,设置上下文, 生命周期的控制,到载入loadAPP;可以通过继承自定义代理类,再赋值给RN的Activity,可以带上Android的Bundle作为参数直接传递给JS层
    1.7 ReactRootView
    顾名思义,就是RN的主view,JS代码的Component设置的UI最终都显示到这个类中,同时还复写了onTouchEvent和onInterceptTouchEvent,用于分发事件到JS

    2. 调用顺序图

    图片为思维导图,大致从上往下调用,类之间通过箭头指向调用;

    RN-ANDROID-01.png

    相关文章

      网友评论

          本文标题:RN(React Native) 与 Android 初识

          本文链接:https://www.haomeiwen.com/subject/yzjhjftx.html