我的第一个reactnative
由于在做极光推送,前端使用的框架是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
安装node,执行指令choco install nodejs.install
然后执行指令: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安装地址
demo的根路径
node_modules是node.js的目录,主要是用来当作服务器使用(就是java当中的tomcat)
如果出现上图说明我们的配置已经完成。
接下来需要安装安卓studio,以及配置sdk23,还有在ios上安装xcode。
首先需要先安装git,可以参考idea和Webstorm上使用git和github,码云,这里面详细说明了git,github的使用以及安装。
Genymotion
比起Android Studio自带的原装模拟器,Genymotion是一个性能更好的选择,但它只对个人用户免费。
- 下载和安装Genymotion(genymotion需要依赖VirtualBox虚拟机,下载选项中提供了包含VirtualBox和不包含的选项,请按需选择)。
- 打开Genymotion。如果你还没有安装VirtualBox,则此时会提示你安装。
- 创建一个新模拟器并启动。
- 启动React Native应用后,可以按下F1来打开开发者菜单。
Visual Studio Emulator for Android是利用了Hyper-V技术进行硬件加速的免费android模拟器。也是Android Studio自带的原装模拟器之外的一个很好的选择。而且你并不需要安装Visual Studio。 在用于React Native开发前,需要先在注册表中进行一些修改:
- 打开运行命令(按下Windows+R键)
- 输入
regedit.exe然后回车 - 在注册表编辑器中找到
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools条目 - 右键点击
Android SDK Tools,选择新建 > 字符串值 - 名称设为
Path - 双击
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的更多相关文章
- 坑中速记整理! 使用 kotlin 写第一个 ReactNative Android 模块
Kotlin 和 Swift, 两大新宠! 借 ReactNative 熟悉下 kotlin 的用法,不料掉坑里面了.昨晚花了大半夜,趁这会儿思路清晰,把涉及到的一些关键信息,迅速整理下. 最佳的使用 ...
- 发现一个ReactNative大神
传送门: RN使用技巧:http://www.jianshu.com/p/2f575cc35780 RN 进阶技巧:http://www.jianshu.com/p/b877115fff1b 亮点有: ...
- 第一次react-native项目实践要点总结
今天完成了我的第一个react-native项目的封包,当然其间各种环境各种坑,同时,成就感也是满满的.这里总结一下使用react-native的一些入门级重要点(不涉及环境).注意:阅读需要语法基础 ...
- 记一个同时支持模糊匹配和静态推导的Atom语法补全插件的开发过程: 序
简介 过去的一周,都睡的很晚,终于做出了Atom上的APICloud语法提示与补全插件:apicloud_autocomplete.个中滋味,感觉还是有必要记录下来的.代码基于 GPL-3.0 开源, ...
- iOS React-Native入门指南之HelloWorld
React-native 作为facebook开源项目,最近是火的一塌糊涂,它采用node.js能够写ios和android的native界面代码,简直是太酷了.支持动态更新,而且appstore 提 ...
- ReactNative之坑爹的在线安装
编译一个github上ReactNative应用,根据说明只有3步: npm installreact-native run-androidenjoy 但几个步骤实在是一波三折充满着坎坷,一点都不en ...
- React-Native入门指导之iOS篇 —— 一、准备工作
React-Native 入门指导系列教程目录 一.准备工作 (已完成) 二.项目介绍与调试 三.CSS样式与Flex布局 四.常用UI控件的使用 五.JSX在React-Native中的应用 六.事 ...
- windows下react-native环境搭建
首先不得不先吐槽一下自己,一个坑总是踩很多次,且乐此不疲. 咋办? 写博客记录记录呗. 零.记录的点 Java环境的下载与配置 Android环境的下载与配置 Node环境的下载与配置 创建第一个re ...
- React-Native入门指导之iOS篇
React-Native 入门指导系列教程目录 一.准备工作 (已完成) 二.项目介绍与调试 三.CSS样式与Flex布局 四.常用UI控件的使用 五.JSX在React-Native中的应用 六.事 ...
随机推荐
- ocx注册
(1)服务器OCX注册 (2)IE浏览器,站点加入可信任站点. internet 选项->安全->可信任站点.把“对该区域中的所有站点要求服务器验证(https:)” 前面的勾去掉 (3) ...
- v - bind
1. 用于处理html标签的动态属性,即动态赋值(动态地绑定一个或多个特性,或一个组件 prop 到表达式) 2. 官网API <!DOCTYPE html> <html lang= ...
- vc 获取函数名称真实地址
首先写一个很简单的main函数: int main(){ printf("main的地址(?):%08x",main); } 单步调试,可得知 main函数的真实入口地址是:00b ...
- 史上最牛逼的纯CSS实现tab选项卡,闪瞎你的狗眼
下载地址:http://download.csdn.net/detail/cometwo/9393614 html文件 <!DOCTYPE html> <html> <h ...
- Codeforces 8D Two Friends 三分+二分+计算几何
题目链接:点击打开链接 题意:点击打开链接 三分house到shop的距离,二分这条斜边到cinema的距离 #include<stdio.h> #include<string.h& ...
- init: cannot execve(‘XXX’):Permission denied问题
近期在给android 4.3系统进行root时候,一直出现例如以下的红色权限问题 : 7.695741] Freeing init memory: 236K [ 8.555286] ini ...
- JBoss jar包冲突及jar加载顺序
http://blog.163.com/javaee_chen/blog/static/17919507720116149511489/将一个完整的.war包部署到Jboss容器中,启动后报如下错误: ...
- css盒子模型及属性介绍(margin,padding)
每个HTML元素都可以看作装了东西的盒子 盒子具有宽度(width)和高度(height) 盒子里面的内容到盒子的边框之间的距离即填充(margin) 盒子本身有边框(border) 而盒子边框外和其 ...
- HTTP协议—— 简单认识TCP/IP协议(转载)
原文地址(http://www.cnblogs.com/roverliang/p/5176456.html) 1.什么是TCP/IP 如果要了解一个人,可以从他归属的集体聊起来.我们的HTTP协议就 ...
- TI博客文章-4-20mA电流环路发送器入门
TI博客文章-4-20mA电流环路发送器入门http://bbs.21ic.com/forum.php?mod=viewthread&tid=1610834&fromuid=10995 ...
