React Native01 - 开发环境搭建

前言

本篇的主要内容是React Native的环境配置,并不会涉及React Native的其他任何内容。之所以会在这里用这么多笔墨,是因为很多计划进军React Native的开发人员,就是因为这一步不成功而放弃React Native(我曾经也是其中一员)。

在这里我给大家提供了一种亲测可行的在window上的环境配置方式,在配置过程中可能会因为电脑环境的不同而出现各种奇葩的问题,这个就需要各位自行百度解决了,算是对你学习React Native决心的一种检验。废话不多说了,开始跟我一起遨游React Native吧

一、 必须要安装的软件

1. Chocolatey

  • Chocolatey是一个Windows上的包管理器,可以简单理解为帮助我们在命令行中安装或者卸载软件的工具,此时我们主要是利用该包管理器帮助我们安装Python和Nodejs。

  • 安装方式

     @powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin
    
  • 可能碰到的问题

    因为安装Chocolatey访问的是国外的服务器,所以在安装过程中可能会安装很慢或者安装失败,此时建议多试几下,如果实在不行那就分别到Python和Nodejs的官网下载这两个软件进行手动安装。下面附上Python和NodeJS的官网, 注意:Python必须下载Python2.0以上版本

    Python官网 NodeJS官网

2. Python2

  • 使用chocolatey安装Python2,目前不支持Python3版本

  • 安装方式

    方式a. chocolatey安装

    choco install python2
    

    方式b. 到上面提供的官网下载安装包,手动安装

3. NodeJS

  • 目前已知Node7.1版本无法正常工作

  • 安装方式

    方式a. chocolatey安装

    choco install nodejs.install
    

    方式b. 到上面提供的官网下载安装包,手动安装

4. 安装完node后建议设置npm镜像以加速后面的过程

npm config set registry https://registry.npm.taobao.org --global

npm config set disturl https://npm.taobao.org/dist --global

5. Yarn、React Native的命令行工具(react-native-cli)

  • Yarn是Facebook提供的替代npm的工具,可以加速node模块的下载。React Native的命令行工具用于执行创建、初始化、更新项目、运行打包服务(packager)等任务

  • 安装方式

    npm install -g yarn react-native-cli
    
  • 可能碰到的问题

    如果你遇到EACCES: permission denied权限错误,可以尝试运行下面的命令(限linux系统): sudo npm install -g yarn react-native-cli.

6. Java Development Kit(JDK)

  • 需要JDK 1.8或者更高版本

  • 可以在命令行中输入java -version来查看版本号,如果显示java不是命令,就说明你没有安装java

  • 安装方式

    方式a. chocolatey安装

     choco install jdk8
    

    方式b. 到java官网下载安装包,手动安装

    java官网

7. Android Studio

  • 需要Android Studio 2.0或者更高版本

  • Android Studio包含了运行和测试React Native应用所需的Android SDK和模拟器

    • 除非特别注明,请不要改动安装过程中的选项。比如Android Studio默认安装了 Android Support Repository,而这也是React Native必须的(否则在react-native run-android时会报appcompat-v7包找不到的错误)

    • 记得将你的SDK安装到哪里了,后面马上就会用到

  • 安装步骤

    1. 官网下载安装包,安装过程中,确认按钮都勾选了,尤其是Android SDK和Android Device Emulator。

      android studio中文官网

    2. 在初步安装完成后,选择Custom安装项


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


    4. 在SDK Platforms窗口中,选择Show Package Details在Android 6.0 (Marshmallow)中勾选以下选项

      • Google APIs、
      • Android SDK Platform 23、
      • Intel x86 Atom System Image、
      • Intel x86 Atom_64 System Image
      • Google APIs Intel x86 Atom_64 System Image


    5. 在SDK Tools窗口中,选择Show Package Details,

      • 在Android SDK Build Tools中勾选Android SDK Build-Tools 23.0.1(必须是这个版本)。

      • 还要勾选最底部的Android Support Repository.


    6 设置ANDROID_HOME环境变量

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

    • 具体的路径可能和下图不一致,请自行确认


二、推荐安装的工具

1. Gradle Daemon

  • 开启Gradle Daomon可以极大地提升java代码的增量编译速度

  • 开启方式

    (if not exist "%USERPROFILE%/.gradle" mkdir "%USERPROFILE%/.gradle") && (echo org.gradle.daemon=true >> "%USERPROFILE%/.gradle/gradle.properties")
    

2. 将Android SDK的Tools目录添加到PATH变量中

  • 把Android SDK的tools和platform-tools目录添加到PATH变量中,以便在终端中运行一些Android工具

  • 打开控制面板 -> 系统和安全 -> 系统 -> 高级系统设置 -> 高级 -> 环境变量 -> 选中PATH -> 双击进行编辑,同一个环境变量如果有多个路径,用分号隔开

![](http://upload-images.jianshu.io/upload_images/3248034-3fb22f795025d7f5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

3. 安卓模拟器-Genymotion

  • 比起Android Studio自带的原装模拟器,Genymotion是一个性能更好的选择,但它只对个人用户免费

  • 下载地址

    Genymotion模拟器下载地址

三、测试安装

1. 在当前命令行所在路径创建一个React Native项目,

  • 时间会比较长,有VPN的同学,建议打开VPN
react-native init AwesomeProject
  • 结束以后你会得到如下一个目录


2. 进行到项目所在目录

cd AwesomeProject

3. 在模拟器上运行安卓项目

运行之前要保证模拟器已经打开,或者已经连接上真机

react-native run-android

完成以后,会新建一个命令行窗口,帮我们打开一个端口号为8081的服务器,如果你把这个新建的命令行窗口关了,服务器就关了,就无法实现热更新了

4. 如果在模拟器或者真机上如下显示就正常了

4. 真机运行项目,无法正常显示解决办法

  1. 是否打开该软件的弹出框的权限

  2. 是否和电脑连接同一个网络

  3. 是否配置IP地址,配置过程如下

    a. 这时候我们摇一摇手机,会出现一个窗口
    b. 点击Dev Settings后,点击Debug server host & port for device,
    c. 设置电脑的无线局域网IP地址和端口号,端口号默认是8081,例如192.168.2.13:8081
    d. 重启这个软件

四、修改项目

现在你已经成功运行了项目,我们可以开始尝试动手改一改了:

  • 使用你喜欢的文本编辑器打开index.android.js找到里面的文本进行修改
  • 然后摇动手机,Reload刷新(模拟器双击键盘上的R键即可)

五、补充

1. react native在iOS上仅支持iOS7以上,Android仅支持Android4.1以上

中文帮助文档 github地址

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,928评论 25 709
  • 尽管在移动开发中,原生APP的开发成本很高,但现阶段基于原生开发仍然是必须的,因为Web的用户体验仍无法超越Nat...
    奔跑的大橙子阅读 5,429评论 0 11
  • 总结:总和各方面情况的结论。 一、爬山 有过一次夜里在山里迷路的恐惧、有过一次皮肤多处被晒伤的毁容(脱皮)、有过一...
    听风看树望天空阅读 455评论 2 2
  • 今天中午包饺子,李烽熠在我们邀请下热情的帮忙,一会摁剂子,一会拾饺子,还时不时地教弟弟,忙的不亦乐乎。她和弟...
    李烽熠妈阅读 146评论 0 0
  • 题目:根据二叉树的先序遍历结果构建二叉树. 创建二叉树 ` func createTreeByPreOrd...
    FlyElephant阅读 1,030评论 0 0