集成原生项目

集成到现有原生应用

1.创建RN项目
    2.AS中创建原生Android项目
    3.将RN中自带的RNActivity,RNApplication页面,导入到Android原生项目中:
        1)导入RN依赖
            在你的app中 build.gradle 文件中添加 React Native 依赖:
            dependencies { 
                ... 
                implementation "com.facebook.react:react-native:+" // From node_modules.
            }

            在项目的 build.gradle 文件中为 React Native 添加一个 maven 依赖的入口,必须写在 "allprojects" 代码块中:
            allprojects { 
                repositories { 
                    ... 
                    maven {
                    // All of React Native (JS, Android binaries) is installed from npm 
                        url "$rootDir/../node_modules/react-native/android" 
                    } 
                } 
            ... 
            }
        2)在 AndroidManifest.xml 清单文件中声明网络权限:
            <uses-permission android:name="android.permission.INTERNET" />
            <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
            DevSettingsActivity 界面(即开发者菜单),则还需要在 AndroidManifest.xml 中声明:
            <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />

        3)在AndroidManifest.xml中声明RNActivity,RNApplication
            <application
                android:name=".RNApplication"
                android:allowBackup="true"
                android:icon="@mipmap/ic_launcher"
                android:label="@string/app_name"
                android:roundIcon="@mipmap/ic_launcher_round"
                android:supportsRtl="true"
                android:theme="@style/AppTheme">

                <activity android:name=".MainActivity">
                    <intent-filter>
                        <action android:name="android.intent.action.MAIN" />

                        <category android:name="android.intent.category.LAUNCHER" />
                    </intent-filter>
                </activity>

                <activity android:name=".RNActivity"></activity>
                <activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
            </application>        

        4)通过android项目点击事件,启动RN视图
            Intent intent = new Intent(MainActivity.this, RNActivity.class);
            startActivity(intent);

    4)将android原生项目,导入到RN/android目录:最编译运行
    5)运行app项目,启动RN服务即可

猜你喜欢

转载自blog.csdn.net/qq_42832884/article/details/83244645
今日推荐