构建环境 AndroidStudio2.0以上 Python nodejs3.xx
安装完成后
直接创建一个android的项目,在创建的过程中,我们要主要要注意的是,项目最低的版本为16
创建完成之后我们打开我们的cmd,然后进入我们项目的根目录下
执行 npm init命令
出现上图所示的提示后,根据提示我们输入我们的项目配置就可以了
一直到所有的提示输入完成后,就会出现上图的结果,我们可以看到这个命令在我们项目的根目录下创建了一个package.json的文件
我们输入yes后,就创建了这个文件。此时,我们打开我们项目的根目录,就会看到这个文件,我们打开这个文件,修改一下文件的内容,
将scripts的内容改为
"start":"node node_modules/react-native/local-cli/cli.js start"
结果如下图所示
修改完成之后,保存文件。接下来我们要加载一些RN的一些组件,继续在cmd中输入如下的命令
npm install --save react react-native
此时我们要等待下载,时间可能会有点长,我们需要等待一会。下载完成之后,就会出现如下的提示
图中箭头标示的是我们需要的一个模块,但是系统提示我们此时我们的项目中没有这个文件,所以我们需要下载这个文件。
根据提示我们去下载我们需要的模块,我们需要执行如下的命令
npm I –S (之前提示我们的模块)
执行之后我们等待下载完成就可以了。
下载完成之后我们到我们的项目根目录下新建一个文件 index.android.js
创建完成后我们要复制一些代码到文件中,
import React,{Component} from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View
} from'react-native';
class HelloWorldextends Component {
render() {
return (
Hello, World
This is my first RN fixed Android Project
)
}
}
var styles =StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
},
hello: {
fontSize: 20,
textAlign: 'center',
margin: 10,
},
});
AppRegistry.registerComponent('HelloWorld', ()
=> HelloWorld);
复制如上代码到我们创建的文件中即可。
然后我们要在我们的app中打一些依赖
compile "com.facebook.react:react-native:+"
然后在我们的项目的build文件下加一个url
maven{
url "rootDir$/node_modules/react-native/android"
}
完成之后我们要创建一个activity继承自ReactActivity这个类来承接我们的index.android.js的界面
完成之后我们要重写我们的Application
完成之后,我们就在我们的cmd中开启这个项目,执行如下命令
npm start
注意,下面是我遇到的一些亢
如果运行项目我们的额log日志打印如下的错误
表明我们要兼容64位的手机,我们要做如下的处理
在我们项目的gradler的文件下修改,添加一个属性
android.useDeprecatedNdk=true.
最后在我们的modules下添加一个
ndk {
abiFilters "armeabi-v7a", "x86"
}
packagingOptions {
exclude "lib/arm64-v8a/librealm-jni.so"
}
}
然后再在我们的项目main下面创建一个assets目录
在我们的cmd中我们执行如下命令
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output app/src/main/assets/index.android.bundle --assets-dest app/src/main/res/
执行完成之后 我们在我们的项目下的assets目录下后有两个新的文件
然后我们重新run我们的项目就可以了
现在 一个rn项目就创建完成了。