react native android环境搭建,使用vscode和夜神模拟器进行开发(适用于0.68+版本)

news2025/1/12 1:36:27

前言

react native官网教程 使用的是android studio搭建环境,本篇文章使用vscode和夜神模拟器进行搭建环境

版本说明:

  • 0.68.0 及以上版本直接往下看
  • 0.67.4 及以下版本请查看另一篇文章:react native android环境搭建,使用vscode和夜神模拟器进行开发(适用于0.67.4及以下版本)

1.安装node.js

node.js 下载 >= 14 版本

2.下载并安装java-jdk

java-jdk,下载 >= 11 版本,注意下载的是exe文件

官网下载jdk需要注册登录账号后才能下载,觉得麻烦可以使用华为的镜像站

在这里插入图片描述

下载后,双击安装,安装时可以修改路径,我这里选择默认路径

注意: 这个安装路径后面配置环境变量需要用到

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

验证是否安装成功

进入安装路径的 bin 文件夹(javac.exe在这个文件夹中),在命令符输入 java -version 回车

在这里插入图片描述

在这里插入图片描述

3.安装Android SDK

react native 0.68.0版本开始,android sdk需要31+

下载并安装 android studio ,android studio高度集成,默认会安装最新版本的 android sdk,也可以自己下载(Tools -> SDK Manager -> Android SDK)

4.配置环境变量

打开控制面板 -> 系统和安全 -> 系统 -> 高级系统设置 -> 高级 -> 环境变量

在这里插入图片描述

系统变量,点击新建,添加如下几个变量

JAVA_HOME

变量值:java_jdk 安装地址(如果不知道,可以去C盘下找Program Files、Program Files (x86)这两个文件夹,会有一个java文件夹,里边就有jdk)

在这里插入图片描述

ANDROID_HOME

变量值:android sdk 安装地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
CLASSPATH

变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar (注意前面有一个点)

在这里插入图片描述

配置Path变量(若系统变量中已有Path则选中编辑,没有的话新建)

在弹出的框中选择新建添加如下

%JAVA_HOME%\bin 要放在 %JAVA_HOME%\jre\bin 前面

%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\emulator
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

在这里插入图片描述

5.初始化项目

npx react-native init AwesomeProject

在这里插入图片描述

6.安装夜神模拟器并配置

夜神模拟器

连接夜神模拟器

启动夜神模拟器后, 打开安装目录的bin目录下执行下面的命令,只需执行一次)

nox_adb connect 127.0.0.1:62001

在这里插入图片描述

7.启动项目

启动项目前,必须先打开夜神模拟器,否则会报一个找不到模拟器的错误

yarn android

将本地app打包成临时包,传输到模拟器

在这里插入图片描述

在这里插入图片描述

如果本篇文章对你有帮助的话,很高兴能够帮助上你。

当然,如果你觉得文章有什么让你觉得不合理、或者有更简单的实现方法又或者有理解不来的地方,希望你在看到之后能够在评论里指出来,我会在看到之后尽快的回复你。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/193819.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FineReport学习-【01 帆软报表入门】

界面功能 官方管理面板详解见这里 报表简介 报表类型 报表设计流程 新建数据连接 查看数据库连接,新建一个本地mysql的数据库 新建报表 新建数据集 实例操作 实例1 分组报表 新建文件夹,用来保存报表 将刚刚查询的数据表放入报表中,并插入表…

k8s核心资源ingress

一、简介ingress是分装到service层上层的一个模块,对外提供统一访问入口,ingress底层是nginx实现的,并且分装了域名访问。外界请求首先打到ingress层,ingress再转发给service层,service再负载均衡到其中的一个pod上。i…

关于符合车规的高精度定位产品

文章目录一、什么是P-Box二、ST的P-Box三、导远的P-Box四、华测的P-Box参考来源对于导航产品来说,下一个大的市场可能就是智能驾驶/辅助驾驶,研发符合车规的导航产品也逐渐成了行业趋势。组合导航产品的主流方案是外置的P-Box方案,只需要单GN…

excel定位选取:再谈快捷键Ctrl+G的妙用

一、仅复制可见单元格在日常工作中我们经常会涉及将隐藏或分类汇总后的数据,粘到一个新表。这个时候如果我们直接复制,粘贴会发生什么呢?这是一个分类汇总后的数据,自动生成了分级显示:第1级,总计&#xff…

uniapp提交应用市场打包问题和安装应用弹出隐私政策协议问题(Android)

uni-app 安卓App提交到应用市场踩坑记录,隐私合规检测,参考链接:https://juejin.cn/post/7163595800235212830 打包问题,同时支持32位和64位;https://uniapp.dcloud.net.cn/tutorial/app-android-abifilters.html# 重…

【Android Studio】【Flutter】Android Studio下Flutter环境搭建记录

目录:1、要学flutter,必须先学Dart语言(类似C语言)2、下载Flutter SDK(软件开发工具包)3、配置国内镜像4、Android Studio新建Flutter项目5、问题解决:(运行flutter doctor命令检查问…

《流浪地球2》的冷思考:如何消除信息孤岛

硬核科幻影片《流浪地球2》成了热议焦点,网友们一方面点赞视觉特效的精益求精,另一方面为引爆月球的故事情节感动,片中一句“50岁以上的出列”让无数观众飙泪。在科技已经进步到地球能在宇宙中“流浪”的未来,仍需牺牲众多“老”宇…

ArkTS初学(一)

想必大家都听说过华为的方舟框架,没错,这就是所说的ArkTS。在HarmonyOS2的时候大家会使用java开发HarmonyOS应用,使用的是Layout来进行布局(用的还是xml文件),之后又出现了js的Component(记不清名字了)的一个功能方便了开发。我们现在就来学习HarmonyOS3…

【数据结构】ArrayList的具体使用(杨辉三角、扑克牌游戏)

目录 1、了解集合的框架 2、了解ArrayList类 2.1、认识ArrayList类当中的属性 2.1、认识ArrayList类库当中的方法 2.1.1、了解构造方法 2.2、ArrayList类当中的Add(新增元素)方法 2.3、了解ensureCapacityInternal(判断是否需要扩容&…

【Rust】18. Rust 的面向对象特性

18.1 面向对象语言的特征 18.1.1 对象:数据 行为 18.1.2 封装隐藏了实现细节 在 Rust 中,在代码中不同的部分考虑使用 pub 可以封装其实现细节 18.1.3 继承,作为类型系统与代码共享 在 Rust 中,不存在继承的机制,而…

【C++11】初始化列表、decltype操作符、nullptr

目录 一、初始化列表 1.1 花括号初始化 1.2 initializer_list 二、decltype 三、nullptr 一、初始化列表 1.1 花括号初始化 在C98中,标准允许使用花括号{ }对数组或结构体元素进行统一的列表初始值设定。 而在C11推出后,使用初始化列表时&#x…

java的方法使用

1.方法概述1.1什么是方法方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集注意:方法必须先创建才可以使用,该过程称为方法定义方法创建后并不是直接运行的,需要手动使用后才执行,该过程…

深入理解mysql性能优化以及解决慢查询问题

MySql系列整体栏目 内容链接地址【一】深入理解mysql索引本质https://blog.csdn.net/zhenghuishengq/article/details/121027025【二】深入理解mysql索引优化以及explain关键字https://blog.csdn.net/zhenghuishengq/article/details/124552080【三】深入理解mysql的索引分类&a…

GPT1、GPT2、GPT3原理

一 背景 GPT1:Generative Pre-Training。是一种生成式的预训练模型,由OpenAi团队发表自论文《Improving Language Understanding by Generative Pre-Training》。 h0=UWe+Wp 二 模型整体结构(宏观) 图1 GPT整体结构 左侧为模型的整体结构,由12个Transformer中的Decoder模块…

App的分类与简析

引言随着智能手机的普及,移动端应用几乎成为每个互联网产品的标配。在快速迭代的互联网战场中高效开发、低成本上线产品,是每个应用开发团队追求的目标。此时,选择合适的应用类型和开发模式便至关重要。移动应用可以粗分为三种:原…

Hystrix线程池隔离与接口限流

前面了解了Hystrix的请求缓存、fallback降级、circuit breaker断路器快速熔断,下面来看下Hystrix的线程池隔离与接口限流。 Hystrix通过判断线程池或者信号量是否已满,超出容量的请求,直接Reject走降级,从而达到限流的作用。限流是限制对后端服务的访问量,比如对MySQL、Re…

CentOS7 LVM 逻辑卷2种读写策略(磁盘IO性能优化)—— 筑梦之路

LVM 逻辑卷的读写策略有两种: linear:线性方式,一块块盘来读写,写完一块盘再写第二块盘、第 N 块盘,性能低striped:条带方式,多块盘一起并行读写,性能高查看 LVM 逻辑卷的读写策略的…

元宇宙,会成为下一代互联网的主场吗?

导语 | 2022 年元宇宙风靡全网,作为过去一年科技界的“当红扛把子”,引多家科技巨头“竞折腰”。近日,《福布斯》双周刊网站在报道中指出,2030 年全球元宇宙的市场规模有望高达 5 万亿美元,2023 年可能是确定其发展方向…

机器学习0 — 总体架构,chatgpt时代必须掌握的

1 从chatgpt看目前AI重要性 随着chatgpt的一声巨响,拉响了强人工智能的序幕。chatgpt相对于目前的各种机器人,简直就是弓箭和导弹的区别。沉寂了两三年后,AI如今又一次站在了人类工业的最高舞台。个人认为AI已经成为所有人,特别是…

vitest第二章(入门)

Vitest 是一个由 Vite 提供支持的极速单元测试框架 tips vite>3 node>14 安装 1.使用npm init -y 生成 package json 2.安装依赖 挑选一种即可 npm install -D vitestyarn add -D vitestpnpm add -D vitest3.新建一个文件calc.ts 开始第一个单元测试吧,…