adb native raact 夜神_React-Native安装及环境搭建(夜神模拟机运行)

React-Native环境搭建及运行

必须安装的依赖有:Node、JDK 和 Android Studio。

Node去官方下载,安装一直下一步下一步就好,最好是改下安装路径。这里主要记录JAVA JDK和Android Studio.

一.安装JAVA JDK

JAVA和React Native没有直接关系。React Native允许您仅使用JavaScript构建移动应用程序,它可以让Android设备构建移动应用程序。 Android设备使用基于JAVA平台的SDK。所以我们先下载JAVA SDK

1.首先去官网下载JDK:

JAVA JDK下载(注意,下载时需要登录Oracle账号,这个不需要用自己邮箱去注册,注册了也不能用,直接百度搜索下就能找到能使用的账户和密码),选择想要的版本进行下载。我是window,选择的windowsx64,版本建议不要使用太高的版本。可能会不支持。我这里下载的是8版本,下载时间可能会久一点,取决于当下的网路。

2.安装

下载完成后双击运行,一直下一步。

3.配置环境变量

在完成安装之后,此时的JDK还不能马上使用,还需要配置环境变量。之前还是前端菜鸟,记得当时配置环境用了至少两天时间。当时尤其是在配置环境变量时,出错了很多次,所以刚入门的小同学可以看仔细喽~我尽量写清楚点。

(1)控制面板=>系统和安全=>系统=>高级系统设置=>最后点击环境变量

(2)添加新的系统变量

在系统变量里面点击新建,来创建一个新的系统变量。

变量命:JAVA_HOME(可以任意取名字,建议是这样起名。)

变量值:取得是当时安装jdk的目录位置。

(3)在系统变量栏下找到 Path 变量,然后进行编辑=>新建=>添加两个配置,分别是

D:\myfile\soft\java\jdk1.8.0_231\bin;

D:\myfile\soft\java\jdk1.8.0_231\jre\bin;

(4)新建系统环境变量CLASSPATH,值为.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;

(5)运行cmd 输入 java -version 显示版本信息就表示成功了。

二.安装Android JDK

1.首先去官网下载JDK:

点此下载Android Studio 确保在安装 Android Studio 之前,已经安装好 Java JDK

2.安装

之后再双击打开

安装完成后,在Android Studio的欢迎界面中选择Configure | SDK Manager

在SDK Platforms窗口中,选择Show Package Details,就可以看到每个版本里面的详情内容。勾选根据自己需要的版本下载。(包很大,不建议全部勾选)

在Android 6.0 (Marshmallow)中勾选

1、Google APIs

2、Android SDK Platform 23

3、Intel x86 Atom System Image

4、Intel x86 Atom_64 System Image

5、Google APIs Intel x86 Atom_64 System Image

在"SDK Tools"选项卡,同样勾中右下角的"Show Package Details"。展开"Android SDK Build-Tools"选项,确保选中了 React Native 所必须的28.0.3版本。你可以同时安装多个其他版本。

最后点击"Apply"来下载和安装这些组件,下载过程很缓慢。。。也和网络速度有关。建议下班后不关电脑,直接让它装一晚上。。(记得充电呦~)

3.配置环境变量

经过漫长的安装,终于到了配置android环境变量的时候了。

(1)控制面板=>系统和安全=>系统=>高级系统设置=>最后点击环境变量

环境变量确保ANDROID_HOME指向你的SDK

(2)Android SDK的platform-tools、emulator、tools、tools\bin添加到PATH变量中

三.调试设备

1.模拟机

模拟机我个人是推荐使用夜神模拟机官方下载即可。安装成功后,命令行连接模拟器(前提是配置了 adb 环境变量,或者到 sdk adb 目录下运行):看到 connected to 127.0.0.1:62001 时表示连接成功。

如何没有,则首先在cmd中输入ipconfig,看下自己的ip地址。然后cd到夜深模拟器中的bin 目录,运行:adb connect 127.0.0.1:62001;将模拟器绑定ip后cd到rn项目文件夹下。

运行命令行:adb devices 查看是否有模拟器配置。

当前是有设备链接。

2.真机

手机数据线链接

四.初始化项目及运行

打开CMD,运行命令npm install -g react-native-cli下载react-native环境。

1.找个文件夹,运行命令,创建文件名称,里面会包含基本页面。

react-native init reactNativeDemo

2.到当前新创建的项目目录下

cd reactNativeDemo

3.启动本地服务

react-native start

4.启动本地模拟器,会自动安装app应用apk包

react-native run-android

如果模拟机桌面没有新建的项目apk包的话,需要从目录中找到,放到模拟机桌面。E:\duojia\reactNativeDemo\android\app\build\outputs\apk\debug目录下生成的.apk文件直接拖拽到模拟器中。

运行react-native run-android如果报错如下(意思是没有连接设备)

5.原因是需要设置模拟机的设备号和端口号。

设置好之后,返回重新按设置菜单选择 Reload,并重新加载项目运行:

Reload之后项目即可以跑起来了,可以愉快的开发啦 ~   ^_^

注:第一次启动运行react-native run-android命令,以后再次启动运行react-native start即可。

本文地址:https://blog.csdn.net/weixin_45851208/article/details/107091930

希望与广大网友互动??

点此进行留言吧!

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

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

相关文章

php object keys_原生js中Object.keys方法详解

实际开发中,有时需要知道对象的所有属性,原生js提供了一个方法Object.keys()。Object.keys(obj)返回的是一个数组,该数组的所有元素都是字符串。这些元素是来自于给定的obj可直接枚举的属性,这些属性的顺序与手动遍历该对象属性时…

中望3d快捷键命令大全_CAD、3D快捷命令

1、对象特性ADC, *ADCENTER(设计中心“Ctrl+2”)CH, MO *PROPERTIES(修改特性“Ctrl+1”)MA, *MATCHPROP(属性匹配)ST, *STYLE(文字样式)COL, *COLOR(设置颜色)LA, *LAYER(图层操作)LT, *LINETYPE(线形)LTS, *LTSCALE(线形比例)LW, *LWEIGHT(线宽)UN, *U…

php 字符串函数 教程_PHP 字符串获取 substr 与 strstr 函数

PHP 字符串获取用于从字符串中获取指定字符串。相关函数如下:substr():从字符串中获取其中的一部分strstr():查找字符串在另一个字符串中第一次出现的位置,并返回从该位置到字符串结尾的所有字符subchr():同 strstr()s…

can通道采样频率_CAN采样点设置为多少合适?设置不对会咋样?

网上有人说道&#xff1a;(1)一般配置在75-80%的位置(2)选择采样点位置在85%左右为佳(3)75% when 波特率 > 800K80% when 波特率 > 500K87.5% when 波特率 < 500K那么到底是多少呢&#xff1f;本博主在ISO11898-1没有找到确切的值。但是cia官网找到了(http:…

简单的php,php简单语句

标签&#xff1a;(01)PHP标记 <?php ?>?>(02)输出语句//echo 不加括号能打印多个值//print 有返回值不能打印多个值//die() 输出并退出程序//exit() 输出并退出程序//printf() 格式化输出//sprintf() 格式化返回//var_dump() 输出全部信息和内…

内固定取出术后护理_股骨内固定钢板取出术后护理查房记录范文

病情分析&#xff1a;2009年10月26日 手术后精神,饮食,睡眠,体重变化等指导意见&#xff1a;一, 护理业务查房&#xff1a;  1, 临床临床护理查房&#xff1a;  是对新入,危重病人的现存护理问题,措施,护理效果,护理质量进行的护理查房,目的是检查,指导责任护士的工作质量,…

python echo命令_如何用Python调用外部命令

解决方法方法1&#xff1a;我们可以使用subprocess&#xff0c;比如要执行 ls -l 命令import subprocesssubprocess.run("ls", "-l")Python3.5 之前的版本&#xff0c;需要使用 callimport subprocesssubprocess.call(["ls", "-l"])方…

vba php,VBA

【行业前景】很多时候&#xff0c;当我们提起VBA&#xff0c;就想到和Excel有关&#xff0c;其实这里所提到的VBA是依附在Excel平台上进行的二次开发&#xff0c;当然它还可以大量应用在其他的软件中&#xff0c;可用VBA进行二次开发。对于我们最常使用的Excel&#xff0c;VBA可…

ios 捕抓crash_ios crash的原因与抓取crash日志的方法

首先我们经常会闪退的异常有哪些呢&#xff1f;crash的产生来源于两种问题&#xff1a;违反iOS策略被干掉&#xff0c;以及自身的代码bug。1.IOS策略1.1低内存闪退前面提到大多数crash日志都包含着执行线程的栈调用信息&#xff0c;但是低内存闪退日志除外&#xff0c;这里就先…

php 多线程上传,PHP CURL 多线程操作代码实例

/** Curl 多线程类* 使用方法&#xff1a;* $urls array("http://baidu.com", "http://dzone.com", "http://google.com");$mp new MultiHttpRequest($urls);$mp->start();* */class MultiHttpRequest {public $urls array();public $curl…

jlabel 不能连续两次set_为什么有时连续多次setState只有一次生效?

例如下面的代码&#xff0c;两次打印出的结果是相同的&#xff1a;componentDidMount() {this.setState({ index: this.state.index 1 }, () > {console.log(this.state.index);})this.setState({ index: this.state.index 1 }, () > {console.log(this.state.index);}…

java字符流实际上也是字节,[Java教程]Java字节流与字符流的区别

[Java教程]Java字节流与字符流的区别0 2017-05-22 12:00:42字节流与和字符流的使用非常相似&#xff0c;两者除了操作代码上的不同之外&#xff0c;是否还有其他的不同呢&#xff1f;实际上字节流在操作时本身不会用到缓冲区(内存)&#xff0c;是文件本身直接操作的&#xff0c…

redis主从集群搭建eclipse_【Redis】Redis 主从模式搭建

主从模式介绍Redis虽然读取写入的速度都特别快&#xff0c;但是也会产生读压力特别大的情况。为了分担读压力&#xff0c;Redis支持主从复制&#xff0c;Redis的主从结构可以采用一主多从或者级联结构&#xff0c;Redis主从复制可以根据是否是全量分为全量同步和增量同步。下图…

unicode编码 php,PHP 的 UNICODE 编码和解码

方法一:function unicode_encode($name){$name iconv(UTF-8, UCS-2, $name);$len strlen($name);$str ;for ($i 0; $i < $len - 1; $i $i 2){$c $name[$i];$c2 $name[$i 1];if (ord($c) > 0){ //两个字节的文字$str . \u.base_convert(ord($c), 10, 16).str_pad…

django models索引_sql – 为什么Django显式地在唯一字段上创建索引

更新&#xff1a;进一步简化实验psql的Q&#xff1a;对于以下Django模型&#xff1a;class Book(models.Model):name models.TextField(uniqueTrue)pg_dump(PostgreSQL 9.3)显示下表&限制&#xff1a;CREATE TABLE book (id integer NOT NULL,name text NOT NULL,);ALTER …

php获取指定日期的万年历,分享3个php获取日历的函数

提供一个日期,获取这个日期的星期对应日历列表,键为星期标示$month_date 2015-09-25;$start_time strtotime($month_date);$start_week date(w, $start_time);$total_month_day date(t, $start_time);$weeks_in_month ceil(($start_week$total_month_day)/7);$month_day_a…

php获取html中文本框内容_小猿圈Python入门之批量获取html内body内容的方法

对于人工智能你了解有多少&#xff1f;你知道Python的使用吗&#xff1f;这个对于大部分初学者来说都是很难的&#xff0c;小猿圈Python讲师会每天为大家选择分享一个知识点&#xff0c;希望对你学习Python有所帮助&#xff0c;今天分享的就是批量获取html内body内容的方法。现…

php改名下载,PHP如何给上传的文件改名

PHP如何给上传的文件改名发布时间&#xff1a;2020-08-03 16:07:39来源&#xff1a;亿速云阅读&#xff1a;72作者&#xff1a;LeahPHP如何给上传的文件改名&#xff1f;相信很多没有经验的人对此束手无策&#xff0c;为此本文总结了问题出现的原因和解决方法&#xff0c;通过这…

python 循环 覆盖之前print内容_Python爬虫第二战---爬取500px图片

前言&#xff1a;如今的高速网络极大促进了信息的展示方式&#xff0c;高清图片&#xff0c;视频等成就了我们的视听盛宴。但是&#xff0c;我们获取到的图片或者视频可能是被压缩过的&#xff0c;所以总体上还是有点小瑕疵&#xff0c;今天呢&#xff0c;我给大家带来一篇使用…

php字符串分割tp模板,ThinkPHP 模板substr的截取字符串函数详解

ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码/**** 截取中文字符串**/function msubstr($str, $start0, $length, $charset"utf-8", $suffixtrue){if(function_exists("mb_substr")){$slice mb_substr($str, $start, $length, $…