由于在做极光推送,前端使用的框架是reactnative,后台写好后为了测试一下,所以按照react官方的教程搭了遍react.

开发环境:
1.windows 7(建议各位如果开发react的最好还是买台mac,一台mac给你打价值远远大于mac机器自身的价值)
2.安装jdk 1.8,配置环境变量
3.安装安卓sdk,可以下载安卓studio
4.安装python,node.js
5.测试reactdemo在网页上是否可以打开
5.安装安卓studio,配置sdk为23并导入reactdemo
6.打包成apk安装到手机
7.关于ios,需要有mac电脑,安装xcode,这里由于手上没有mac设备就不做介绍,可以参考其他文章
安装python2

首先打开cmd,运行choco install python2安装python

image.png

image.png

安装node,执行指令choco install nodejs.install

image.png

image.png
然后执行指令:npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
然后安装全局模块
npm install -g yarn react-native-cli 下载react-native的demo
react-native init reactdemo
注意:不要执行中文路径名,也不要在中文路径下安装项目

环境装好以后需要安装java,jdk1.8,并配置java环境变量,以及安装安卓的sdk,由于我电脑上面已经有这环境了,故这里不做说明。
jdk1.8安装地址

image.png

 

demo的根路径

image.png

node_modules是node.js的目录,主要是用来当作服务器使用(就是java当中的tomcat)

image.png

如果出现上图说明我们的配置已经完成。

接下来需要安装安卓studio,以及配置sdk23,还有在ios上安装xcode。

首先需要先安装git,可以参考idea和Webstorm上使用git和github,码云,这里面详细说明了git,github的使用以及安装。

Genymotion

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

  1. 下载和安装Genymotion(genymotion需要依赖VirtualBox虚拟机,下载选项中提供了包含VirtualBox和不包含的选项,请按需选择)。
  2. 打开Genymotion。如果你还没有安装VirtualBox,则此时会提示你安装。
  3. 创建一个新模拟器并启动。
  4. 启动React Native应用后,可以按下F1来打开开发者菜单。

Visual Studio Emulator for Android是利用了Hyper-V技术进行硬件加速的免费android模拟器。也是Android Studio自带的原装模拟器之外的一个很好的选择。而且你并不需要安装Visual Studio。 在用于React Native开发前,需要先在注册表中进行一些修改:

  1. 打开运行命令(按下Windows+R键)
  2. 输入regedit.exe然后回车
  3. 在注册表编辑器中找到HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools条目
  4. 右键点击Android SDK Tools,选择新建 > 字符串值
  5. 名称设为Path
  6. 双击Path,将其值设为你的Android SDK的路径。(例如C:\Program Files\Android\sdk

<a class="anchor" name="%E6%B5%8B%E8%AF%95%E5%AE%89%E8%A3%85" style="box-sizing: border-box; color: rgb(51, 122, 183); text-decoration: none; position: relative; top: -70px;"></a>测试安装

react-native init AwesomeProject
cd AwesomeProject
react-native run-android

如果你在设备上看到了红屏报错,请参阅在设备上运行

提示:你可以使用--version参数创建指定版本的项目。例如react-native init MyApp --version 0.44.3。注意版本号必须精确到两个小数点。

Windows用户请注意,请不要在命令行默认的System32目录中init项目!会有各种权限限制导致不能运行!

修改项目

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

    • 使用你喜欢的文本编辑器打开App.js并随便改上几行
    • 按两下R键,或是用Menu键(通常是F2,在Genymotion模拟器中是⌘+M)打开开发者菜单,然后选择 Reload JS 就可以看到你的最新修改。
    • 在终端下运行adb logcat *:S ReactNative:V ReactNativeJS:V可以看到你的应用的日志。
      react中文官方站地址

我的第一个reactnative的更多相关文章

  1. 坑中速记整理! 使用 kotlin 写第一个 ReactNative Android 模块

    Kotlin 和 Swift, 两大新宠! 借 ReactNative 熟悉下 kotlin 的用法,不料掉坑里面了.昨晚花了大半夜,趁这会儿思路清晰,把涉及到的一些关键信息,迅速整理下. 最佳的使用 ...

  2. 发现一个ReactNative大神

    传送门: RN使用技巧:http://www.jianshu.com/p/2f575cc35780 RN 进阶技巧:http://www.jianshu.com/p/b877115fff1b 亮点有: ...

  3. 第一次react-native项目实践要点总结

    今天完成了我的第一个react-native项目的封包,当然其间各种环境各种坑,同时,成就感也是满满的.这里总结一下使用react-native的一些入门级重要点(不涉及环境).注意:阅读需要语法基础 ...

  4. 记一个同时支持模糊匹配和静态推导的Atom语法补全插件的开发过程: 序

    简介 过去的一周,都睡的很晚,终于做出了Atom上的APICloud语法提示与补全插件:apicloud_autocomplete.个中滋味,感觉还是有必要记录下来的.代码基于 GPL-3.0 开源, ...

  5. iOS React-Native入门指南之HelloWorld

    React-native 作为facebook开源项目,最近是火的一塌糊涂,它采用node.js能够写ios和android的native界面代码,简直是太酷了.支持动态更新,而且appstore 提 ...

  6. ReactNative之坑爹的在线安装

    编译一个github上ReactNative应用,根据说明只有3步: npm installreact-native run-androidenjoy 但几个步骤实在是一波三折充满着坎坷,一点都不en ...

  7. React-Native入门指导之iOS篇 —— 一、准备工作

    React-Native 入门指导系列教程目录 一.准备工作 (已完成) 二.项目介绍与调试 三.CSS样式与Flex布局 四.常用UI控件的使用 五.JSX在React-Native中的应用 六.事 ...

  8. windows下react-native环境搭建

    首先不得不先吐槽一下自己,一个坑总是踩很多次,且乐此不疲. 咋办? 写博客记录记录呗. 零.记录的点 Java环境的下载与配置 Android环境的下载与配置 Node环境的下载与配置 创建第一个re ...

  9. React-Native入门指导之iOS篇

    React-Native 入门指导系列教程目录 一.准备工作 (已完成) 二.项目介绍与调试 三.CSS样式与Flex布局 四.常用UI控件的使用 五.JSX在React-Native中的应用 六.事 ...

随机推荐

  1. SDL 学习及相关API

    SDL_PeepEvents() 在事件队列中搜索特定类型的事件. int SDL_PeepEvents(SDL_Event *events, int numevents, SDL_eventacti ...

  2. 视频质量评价方法:VQM

    如何确定一个视频质量的好坏一直以来都是个棘手的问题.目前常用的方法就是通过人眼来直接观看,但是由于人眼的主观性及观看人员的单体差异性,对于同样的视频质量,不同的人的感受是不一样的.为此多个研究机构提出 ...

  3. UIView的transform属性

    一.什么是Transform Transform(变化矩阵)是一种3×3的矩阵,如下图所示: 通过这个矩阵我们可以对一个坐标系统进行缩放,平移,旋转以及这两者的任意组着操作.而且矩阵的操作不具备交换律 ...

  4. eclipse 模版的使用

    输入:s,然后利用快捷提示键(alt+/)高速的打出:System.out.println(""); 这样能够节省不少时间,使用了三个按键,却打出了这么多的字.事实上,这个功能是利 ...

  5. 算法笔记_162:算法提高 复数归一化(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 编写函数Normalize,将复数归一化,即若复数为a+bi,归一化结果为a/sqrt(a*a+b*b) + i*b/sqrt(a*a+b*b) . ...

  6. LR 监控mysql

    sapphire的个人空间 中介绍了LoadRunner监控Mysql和Appache进程占用cpu的方法 方法如下: 公司的新产品需要监控Mysql和Appache进程,求高手帮忙总算成功了. 服务 ...

  7. 微信小程序之下拉刷新,上拉更多列表实现

    代码地址如下:http://www.demodashi.com/demo/11110.html 一.准备工作 首先需要下载小程序开发工具 官方下载地址: https://mp.weixin.qq.co ...

  8. SWFupload在IE9以上中的bug

    这几天在做图片上传的东西,是用swfupload是出现了再IE9下那选择文件的按钮无法点击的情况,在其他浏览器,例如Firefox.chrome都不会出现,后来google一下才发下这算是IE9以上和 ...

  9. pythselenium webdriver

    转自:http://www.cnblogs.com/fnng/archive/2013/06/16/3138283.html 原文档地址: http://docs.seleniumhq.org/doc ...

  10. .net 非阻塞事件获取返回异步回调结果

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...