React Native 嵌入原生项目混合开发-自定义RN Activity

如果进行一个RN项目开发,初始化项目之后,就会有一个Activity是继承RnActivity的。
如果进行混合开发时,由于我们的Activity可能要做很多工作,还想继承我们原生的Activity。
因此,就可以自定义一个RN的Activity,无须继承官网的Activity。

假如,我们已经有了一个BaseActivity。再定义一个RnActivity,里面可以封装若干个抽象方法,所有的RnActivity都有可能使用到的。

再然后,就可以新定义一个Activity,这个Activity继承,我们自定义的RnActivity。

在onCreate方法中,

 ReactRootView mReactRootView = new ReactRootView(this);
 ReactInstanceManager.Builder builder = ReactInstanceManager.builder();
 builder.setApplication(Application.getInstance());
 builder.setJSMainModuleName("index.android");
        builder.addPackage(new MainReactPackage());
        builder.setUseDeveloperSupport(BuildConfig.DEBUG);
        builder.setInitialLifecycleState(LifecycleState.RESUMED);
        builder.setJSBundleFile(bundlePath);
        mReactInstanceManager = builder.build();
        // 注意这里的HelloWorld必须对应“index.android.js”中的
        // “AppRegistry.registerComponent()”的第一个参数
        mReactRootView.startReactApplication(mReactInstanceManager, "HelloWorld", null);

以上也可以称之为RN更新界面的方法。

这个bundlePath,就可以是热更新的Bundle文件在终端的位置。
这样就能正常使用,并增加了很多的自由度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值