首先在开始之前最好先初始化一个RN项目。(对目录有一个大概的了解,对于后续的配置有很大帮助)。
这时候会发现在RN的根目录下面会有一个android和ios目录,不用怀疑,android目录下面就是一个完整的android项目,我们这里只讨论android项目配置RN,ios项目暂不讨论。
使用AndroidStudio打开android项目,如下图:
这里主要关注两个文件,上图中已经标记出来了。
1.app模块的build.gradle
api ('com.facebook.react:react-native:0.55.2') {
exclude group: 'com.android.support'
}
可以看到引入了facebook的RN三方库,但是这里有个问题,facebook的公共maven库对于RN的环境库只维护到0.20.1版本,我这里明显是0.55.2版本,理论上是会引入失败的,那这里这么写不是有问题的吗!!
其实,解决这个问题的代码在项目的build.gradle中,这里提一下,暂不解决,讲到项目的gradle文件的时候会解决。
上面显示的代码框里的代码跟新初始化的RN项目有一点区别,因为多了一句exclude group: 'com.android.support'。
这是因为我这里的support库与RN的库有了冲突,自己加的,如果你们的项目没有冲突,那不加也没事。
2.项目的build.gradle
maven {
// All of React Native (JS, Android binaries) is installed from npm
url "$rootDir/../node_modules/react-native/android"
}
一打开这个文件,学过android的人应该很清楚,这个maven库,竟然是个本地路径,啥情况,这对于开发是多么不友好,如果团队其他人要进行开发,那还必须有这样一个环境咯?作为一个最怕麻烦的程序员,这当然不能啦!!!后面的文章里我会讲解这个问题的,在本篇文章Android项目内RN环境介绍内,只讲基础环境。
在上面app模块的build.gradle中遗留的问题,解决地方就在这里,这个本地的maven库,打开文件夹可以看到,里面就是一个RN的三方库
All of React Native (JS, Android binaries) is installed from npm
所有的RN库都是由npm进行安装的
不信的可以试一下,去掉这个本地库,RN库是安装不成功的。
讲完了Android内的RN环境,下一节就开始讲如何将RN与我们的Android项目进行拆分了。