React Native入门(一)之安装,环境搭建
来源:互联网 发布:模特接单软件 编辑:程序博客网 时间:2024/05/29 15:04
介绍
最近需要了解一下React Native,所以第一步先搭建环境!
废话不多说,开始!
官网:https://facebook.github.io/react-native/
中文官网:http://reactnative.cn/
Github:https://github.com/facebook/react-native/
当然,了解一个新的东西,这些官方的东西是再好不过了,需要慢慢消化!
推荐阅读:写给移动开发者的 React Native 指南
安装
①安装Chocolatey
Chocolatey是一个Windows上的包管理器,类似于linux上的yum
和 apt-get
。
官网:https://chocolatey.org/
安装步骤,点击这里,官网上提供两种方式,一种是在CMD中,一种是在PowerShell中。
这里具体说一下在CMD中的安装:
首先我们需要用管理员身份去运行CMD命令行,如何使用管理员身份去运行CMD,可以参照下面这篇百度经验!
Win10怎么以管理员身份运行CMD命令提示符
然后,输入命令:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
敲回车,就会自动安装,并且配置环境变量。
当然,这个只是一个Windows下辅助安装软件的工具,下边的软件都可以去其官网下载!
②安装Python 2
注意目前不支持Python 3版本。
输入命令:
choco install python2
可能这时候会弹出一句:
FIPS Mode detected - run 'choco feature enable -n useFipsCompliantChecksums' to use Chocolatey.When FIPS Mode is enabled, Chocolatey requires useFipsCompliantChecksums feature also be enabled.
我也不知道干嘛的,照着做不就行啦!
输入choco feature enable -n useFipsCompliantChecksums
,回车,这时就会显示useFipsCompliantChecksums
可用了!
重新输入命令安装,之后会自动安装好,并配置好环境变量,这样就可以啦!
③安装NodeJS
输入命令:
choco install nodejs.install
就会自动安装好,并配置好环境变量!
然后呢,安装完node后建议设置npm镜像以加速后面的过程(或使用科学上网工具)。
这时需要npm
命令,但是虽然环境变量配置了,但是当前CMD还不知道啊!所以,需要你关闭当前CMD,再重新打开!或者,输入命令:
refreshenv
这跟Linux中,配置完环境变量,输入source .bash_profile
刷新,一个道理!
然后就可以使用npm
命令了!
npm config set registry https://registry.npm.taobao.org --globalnpm config set disturl https://npm.taobao.org/dist --global
④安装Yarn、React Native的命令行工具(react-native-cli)
来到重头戏,主角登场!
Yarn是Facebook提供的替代npm的工具,可以加速node模块的下载。React Native的命令行工具用于执行创建、初始化、更新项目、运行打包服务(packager)等任务。
输入命令:
npm install -g yarn react-native-cli
会自动安装好!
安装完yarn后同理也要设置镜像源:
yarn config set registry https://registry.npm.taobao.org --globalyarn config set disturl https://npm.taobao.org/dist --global
安装完yarn之后就可以用yarn
代替npm
了,例如用yarn
代替npm instal
l命令,用yarn add 某第三方库名
代替npm install --save 某第三方库名
。
⑤安装Android Studio
这个就不用再多说了吧!
但是需要我们配置Android的环境变量。
具体路径,写你自己的就行!
其他
开启Gradle Daemon
开启Gradle Daemon可以极大地提升java代码的增量编译速度。
输入命令:
(if not exist "%USERPROFILE%/.gradle" mkdir "%USERPROFILE%/.gradle") && (echo org.gradle.daemon=true >> "%USERPROFILE%/.gradle/gradle.properties")
测试安装
react-native init AwesomeProjectcd AwesomeProjectreact-native run-android
3条命令,第一条在所在目录创建项目AwesomeProject,第二条切换到AwesomeProject目录,第三条运行为Android项目。
在执行react-native run-android
的时候,主要有两个步骤:
①Start JS server
如果按照前边的步骤正常执行的话,开启JS server服务应该是不会有什么问题的!如图:
如果需要手动开启,在项目目录下,输入命令:
react-native start
之后,如果在浏览器中输入, http://localhost:8081/index.android.bundle?platform=android
如果访问成功(出现一大堆代码,哈哈哈),那么恭喜你,服务已启动成功!
②编译生成APK,并安装到手机上!
需要注意的问题:
①你可以使用–version参数创建指定版本的项目。例如react-native init MyApp --version 0.39.2
。注意版本号必须精确到两个小数点。
②我们在配置完环境之后,可能CMD中的当前目录为:C:\Windows\System32
,我们需要切换到一个其他的目录,比如换到桌面上C:\Users\xxxxxx\Desktop
,之后再执行命令init我们的项目,则项目就会创建在桌面上!否则会有各种权限限制导致不能运行!
③当前必须只能有一个机子连着电脑,无论是模拟器还是真机!
④在真机上运行时可能会遇到白屏的情况,请在设置中开启悬浮窗权限。
你以为这样就能Hello World了,还是太年轻啊…..!
JS服务开启了,悬浮窗权限也开了,不管怎么Reload,一直报错Couldn’t connect to the server!
根据下边的提示:
如果你使用数据线连着电脑的,输入命令:
adb reverse tcp:8081 tcp:8081
reload即可。
如果没有使用数据线连接,首先要确保,你的手机要和电脑处在同一个局域网下,然后晃动手机,弹出菜单,选择Dev Settings ---> Debug server host&port for device
,在弹出的对话框中输入你电脑的IP:8081
,点击确定,之后reload!
这样,wc,终于看到庐山真面目了!
2017/10/23更新:
在使用真机调试时,真的是一些国产ROM简直了,一直安装不上!(魅族,小米等),报错:
com.android.ddmlib.InstallException: Failed to install all...Error while uploading app-debug.apk : Unknown failure ([CDS]close[0]):app:installDebug FAILEDFAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':app:installDebug'.> com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: Failed to install all
这个真不知道怎么解决!如果有知道的童鞋,望告知!
然后在stackoverflow上找到一个回答:
Unable to use real device for react development
可以参考一下!
①首先使用adb devices
,查看当前连接真机的deviceId,
②然后使用命令react-native run-android --deviceId 你的设备id
来进行安装。
不过,还是不能调试啊,当然算是在真机上运行了!
iOS环境搭建问题
2017.11.3更新
这两天摸索了一下iOS环境的搭建!
具体的步骤呢,安装官网一步一步来就行,没有什么要多说的!
最后在运行的时候react-native run-ios
,报错了:
xcrun: error: unable to find utility "instruments", not a developer tool or in PATH
出现这个问题的原因就是xcode 开启模拟器找不到路径!
我们在mac 的app store里下载的xcode会默认安装在/Applications/Xcode.app
下,
我们使用命令可以查看当前模拟器配置路径: xcode-select -print-path
运行是/Applications
,所以需要我们修改路径:
使用命令:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer/
即可!
2017.11.27更新
iOS端在模拟器上运行,没有什么大的问题,现在说一下在真机上运行报错的问题:
①bundle ID不能用
这种情况,随便修改修改,尝试一下就行了!
②签名问题
我们要在项目配置中的signing一项,选择一个development team,还要生成一个signing certificate!
需要注意的一点:我们项目对应的tests,也要对应的设置签名!否则一样报错!
③使用Chrome调试
对于iOS真机来说,需要打开 RCTWebSocketExecutor.m
文件,然后将其中的“localhost”改为你的电脑的IP地址,最后启用开发者菜单中的”Debug JS Remotely”选项。
另外iOS9的原因只接受https协议!所以需要在Xcode info.plist里添加条件:
调试
这里说一下用的最多的使用Chrome开发者工具调试!就是谷歌浏览器F12!
在开发者菜单中选择”Debug JS Remotely”选项,即可以开始在Chrome中调试JavaScript代码。点击这个选项的同时会自动打开调试页面 http://localhost:8081/debugger-ui.
对于iOS真机来说,需要打开 RCTWebSocketExecutor.m
文件,然后将其中的”localhost”改为你的电脑的IP地址,最后启用开发者菜单中的”Debug JS Remotely”选项。
对于Android 5.0+设备(包括模拟器)来说,将设备通过USB连接到电脑上后,可以使用adb命令行工具来设定从设备到电脑的端口转发:
adb reverse tcp:8081 tcp:8081
如果设备Android版本在5.0以下,则可以在开发者菜单中选择”Dev Settings - Debug server host for device”,然后在其中填入电脑的”IP地址:端口“。
修改项目
①使用你喜欢的文本编辑器打开index.android.js
并随便改上几行
②按两下R键,或是用Menu键(通常是F2,在Genymotion模拟器中是⌘+M),或者摇一摇真机打开开发者菜单,然后选择 Reload JS 就可以看到你的最新修改。
③在终端下运行adb logcat *:S ReactNative:V ReactNativeJS:V
可以看到你的应用的日志。这个是查看全部的日志!
如果要查看单独一个平台的日志:
$ react-native log-ios$ react-native log-android
推荐IDE
2017/7/14补充
关于开发工具的选择,我个人是比较推荐WebStorm的,为什么?因为我们平常一直使用Android Studio(只针对Android开发),而AS就是基于jetbrains下IntelliJ IDEA开发的,因此界面我们会无比的熟悉,而且现在WebStorm早已支持React Native,可以说是非常的方便了!
虽然这个不是免费的,只能使用30天,但是网上破解注册加汉化包一搜一大堆,这里就不给连接了!。。。。。。相信聪明的你可以的!
那么WebStorm怎么设置调试RN应用呢?
打开WebStorm,在右上方运行的小三角左边有个下拉框,点击编辑结构!(我这里是已经配置好的!)
然后在弹出页面中,点击左上方的加号,添加新配置,我们选择React Native,然后下边的配置会自动带出来,我们可以选择一个平台,然后给一个名称,保存即可!
就是这么简单!!!!!
- React Native入门(一)之安装,环境搭建
- React Native基础与入门(一)--搭建开发环境
- React Native Android(一)环境搭建
- React Native Android(一)环境搭建
- react native (一) 搭建环境
- React Native(一) 环境搭建
- React Native 入门环境搭建
- React Native之环境搭建
- React-Native 入门环境搭建(Window环境)
- [Wondgirl]从零开始学React Native之环境搭建(一)
- React Native学习笔记一之搭建开发环境
- 21、react之 react-native环境搭建
- React Native入门学习笔记一(环境搭建windows+android)
- Android React-Native系列之<一>零基础搭建React-Native开发环境
- React Native 入门课程(2)环境搭建
- React Native系列(一)React Native 环境搭建
- React Native开发一 webstorm搭建React Native开发环境
- React Native 入门了解及环境搭建
- @RestController
- 第一篇博客
- [转]Linux查看磁盘使用情况命令
- Javascript是一种什么样的语言,它有哪些特点?
- VT-x is disabled in the BIOS.(VERR_VMX_MSR_VMON_DISABLED)
- React Native入门(一)之安装,环境搭建
- Linux简单安装
- android四种常用的消息传递机制/模式的比较
- springboot-gradle + mybatis-generator-plugin
- 暑期第三天
- springboot-AOP
- springboot-配置文件
- 【小工具】页面加载获取url param
- springboot-Controller