React Native环境搭建
环境搭建
Node和JDK
Node
版本18 JDK
版本
React Native版本 | JDK版本 |
---|---|
jdk17 | |
jdk11 | |
jdk8 |
yarn
安装npm install -g yarn
,Yarn是 Facebook 提供的替代npm
的工具 ## Android开发环境下载安装
Android Studio
安装
Android SDK
SDK Platforms
:Android API 33
SDK Tools
:Android SDK Build-Tools 33.0.0
、**Android SDK Command-line Tools 12.0**
设置环境变量
默认情况下Android SDK
安装在C:\Users\<username>\AppData\Local\Android\Sdk
中,可以自行修改。
添加环境变量:设置ANDROID_HOME
为C:\Users\<username>\AppData\Local\Android\Sdk
在Path
环境变量中添加:%ANDROID_HOME%\platform-tools
和**%ANDROID_HOME%\cmdline-tools\12.0\bin**
## 准备Android设备使用
Android
真机使用
Android
模拟器
使用Android Studio
创建虚拟设备检查设备是否存在
使用adb devices
检查
## 创建模板项目
新建项目
npx react-native init TemplateProject
编译运行
## 遇到的问题1
2cd TemplateProject
yarn android环境检查
npx react-native doctor
命令检查当前项目中的环境是否完备。
- 识别不到
Android SDK
安装了SDK
并且配置了环境变量,但是无法识别。
需要安装Android SDK Command-line Tools 12.0
,并配置环境变量。 Android SDK
打包失败
https://stackoverflow.com/questions/68387270/android-studio-error-installed-build-tools-revision-31-0-0-is-corrupted- 修改
%ANDROID_HOME%/build-tools/33.0.0
目录中的d8.bat
,修改为dx.bat
- 修改
%ANDROID_HOME%/build-tools/33.0.0/lib
目录中的d8.jar
,修改为dx.jar
# 组件库 经过调研,可以选取React Native Elements
组件库(链接),该组件库在github
有24k stars,属于很流行的组件库。 ## 安装 这里选取React Native CLI
方式安装。
- 修改
- 安装组件库
yarn add @rneui/themed @rneui/base
- 安装依赖
yarn add react-native-safe-area-context
yarn add react-native-vector-icons
- 设置
react-native-vector-icons
- 推荐使用
Gradle
设置,在android/app/build.gradle
文件中添加语句apply from: file("../../node_modules/react-native-vector-icons/fonts.gradle")
# React Navigation 安装依赖在1
2
3yarn add @react-navigation/native
// 如果是纯react native项目安装该依赖
yarn add react-native-screens react-native-safe-area-contextandroid/app/src/main/java/<your package name>
包下的MainActivity
类中添加如下代码:同时在这个文件最开头导入:1
2
3
4
5
6
7class MainActivity: ReactActivity() {
// ...
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(null)
}
// ...
}import android.os.Bundle;
在App
组件最外侧使用NavigationContainer
标签包裹 ## Stack 安装yarn add @react-navigation/stack
安装依赖yarn add react-native-gesture-handler
使用
在App.js
或者index.js
文件最开头引用:import 'react-native-gesture-handler';
- 推荐使用