写在前面,一定按照官网的要求来,一定要翻墙。
- node Node 的版本应大于等于 16。使用nvm管理node版本,详细文档可参考 此链接
命令 node -v 查看本机版本
- java sdk 根据 rn的版本来选,看项目中pack.json ,react-native的版本号,我的是 “react-native”: “0.72.5”。此处jdk11的下载链接
低于 0.67 版本的 React Native 需要 JDK 1.8 版本(官方也称 8 版本)。
高于的需要 JDK 11。你可以在命令行中输入 javac -version
- yarn 的安装;加速 node 模块的下载
npm install -g yarn
4.Android 开发环境
4.1下载安装包
4.2 配置sdk
安装完成后点击菜单栏的Tools > SDK Manager
选择需要下载的SDK Platforms / SDK Tools,先勾选右下角Show Package Details。
勾选的完成后,点击apply
SDK Platforms 栏勾选 Android 13.0(“Tiramisu”)
- Android SDK Platform 33
- Intel x86 Atom_64 System Image
SDK Tools 栏勾选 Android SDK Build-Tools 34
- 33.0.0
4.3 配置环境变量
参考官网文档即可。
5.创建项目
5.1 初始化项目
npx react-native@latest init AwesomeProject
5.2 运行
cd AwesomeProject
yarn android
5.3 运行成功的视图
6.报错及解决办法
Q: Failed to launch emulator. Reason: No emulators found as an output of emulator -list-avds
.
A:
- 检查java,android 的sdk是否安装成功
- 若安装成功了,检查安装的SDK Platforms 与 项目中配置的版本是否一致
- 检查虚拟设备是否安装,没有安装的参照以下设置即可。
根据错误提示,“Failed to launch emulator. Reason: No emulators found as an output of emulator -list-avds”,表示在运行emulator -list-avds命令时没有找到任何模拟器。这通常意味着你还没有为 Android 模拟器创建任何虚拟设备(AVD)。
要解决此问题,你需要创建一个 AVD。以下是使用 Android Studio 创建 AVD 的步骤:
- 打开 Android Studio。
- 从 “Tools” 菜单中选择 “Device Manager”。
- 在 Device Manager 窗口中,点击 “Create Device”。
- 选择一个设备类型,并点击 “Next”。
- 选择一个系统镜像,并点击 “Next”。
- 配置 AVD 的其他详细信息,例如设备名称、屏幕尺寸等,并点击 “Finish”。
完成上述步骤后,你应该能够在运行 emulator -list-avds 命令时看到你新创建的 AVD。
Q: Could not determine the dependencies of null.
Could not resolve all task dependencies for configuration ‘:classpath’.
Could not find com.android.tools.build:gradle:.
Required by:
project :
Could not resolve com.facebook.react:react-native-gradle-plugin.
A: 检查本机java sdk 版本是否与RN版本匹配。低于 0.67 版本的 RN 使用java8;否则使用java11。
Q: Could not resolve all dependencies for configuration ‘:classpath‘.
A: 找到android\build.gradle文件,在 repositories添加一下两段代码即可。
maven{ url = "https://maven.aliyun.com/repository/google" }
maven{ url = "https://maven.aliyun.com/repository/public" }
Q: Execution failed for task ‘:app:checkDebugAarMetadata’.
metadata, org.gradle.category=library, org.gradle.dependency.bundling=external, org.gradle.libraryelements=aar, org.gradle.sa-runtime}.
“A” 设置翻墙后重新执行 yarn android 即可。
Q: react-native : 无法将“react-native”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确 保路径正确,然后再试一次。
A: 执行以下命令后重新执行 yarn android 即可。
npx react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res