React-native 使用js编写android和ios程序,前端时间开始支持android,本人根据官方的教程,先安装开发环境,然后运行hello world,最后看了下官方提供的实例程序UIExplorer,感觉还不错。
 
对android相对熟悉一点,首先关注android部分,android使用grader编译,可以导入工程到android studio或者idea中,也可以使用命令行编译。在android studio中运行以后可以普通的android程序一样,点运行按钮以后就开始编译,如果电脑上连接好了安卓设备或者模拟器就可以成功运行。(采用命令行有的设备会安装失败需要手动安装)
 
这里运行的是一个loder程序,通过loader程序会加载本地服务器端的js文件,服务器端由note.js提供,使用命令“adb reverse tcp:8081 tcp:8081” 可以将本地端口绑定到设备上,由于本人adb的版本原因 命令执行失败,因此在loader中设置ip地址来访问服务器端,
 
服务器端程序当然要启动才行,运行react-native run-android 启动服务器端和编译安装loader是同时进行的。
另外也可以单独运行服务器端程序,react native start 或者在master目录中运行 ./install/install.sh
 
ios也是采用类似的方式,创建项目后会生成项目文件,导入Xcode直接运行就可以了,运行的时候同样会启动服务端。
 
loader程序一般是固定不变的,修改服务端的js文件,然后再loader上reload就会加载新的js文件,这样对提高开发效率是很有好处的,
编写android的程序,当然是要返回测试的,虽然打包安装的过程都是全自动的,但不停的这样操作是很费时间的,如果机器配置不好每次修改后程序运行都要等一段时间。
 
当然,这样看来也可以对应用进行热更新,就像网站一样,如果更新了服务器端程序,客户访问到的就是修改后的网站。但是代码的加密又会是新的问题。
 
就android而言,loader程序代码,和普通的安卓项目是基本上是一样的,不同的是引入了react-native的lib(核心库),lib已第三方库的形式存在,使用android studio只需要填写lib名称,就会自动下载,从被注释的代码可以看到,也可以从源码引入lib工程,如果源码不满足你的要求就可以直接去修改。
 
loader的作用就是提供js的执行环境,react是将android自带的控件函数之类映射到js中,ios也是采用类似的方式,通过js来调用原有的函数,而不是自己重新实现了一个界面框架。因此android端的demo和ios的是有一些差别的。
 
js的执行环境是采用JavaScriptCore引擎,调试时根据官方的介绍说放在浏览器端执行的,使用V8引擎。
配置开发环境,根据文档需要安装NDK,实际上如果不自己编译react-native的核心库,是不需要NDK的,应用程序一般直接引入lib就可以了。
 
理论上运行hello world,只需要loader程序和一个note.js的服务器就可以了,如果做开发还需要loader的源代码以增加原生的扩展,调试的话,react-native提供了谷歌浏览器的插件来调试。
 
官方的文档目前是苹果系统下进行的,如果要开发ios的应用是必须使用苹果系统的,没有Xcode ios的loader无法编译。
 
不过,如果只想看看android的效果,使用windows应该也是可以的。理论上只需要装上note.js的服务器环境,并且导入android项目源码就可以了。
 
当然本人并没有测试,准备有时间到windows下试试,到时候再发文章吧,敬请期待.....
 
更多精彩内容,请关注微信公众号:zhaojieTec
 

React-Native测试报告的更多相关文章

  1. 30天React Native从零到IOS/Android双平台发布总结

    前言 本人有近十年的技术背景,除了APP开发之外对后端.前端等都比较熟悉,近期做一个APP项目需要IOS.Android两个平台都需要,只能硬着头皮上.其实很早就想开发APP也很早就接触Android ...

  2. React Native 之 Text的使用

    前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...

  3. React Native环境配置之Windows版本搭建

    接近年底了,回想这一年都做了啥,学习了啥,然后突然发现,这一年买了不少书,看是看了,就没有完整看完的.悲催. 然后,最近项目也不是很紧了,所以抽空学习了H5.自学啃书还是很无趣的,虽然Head Fir ...

  4. 史上最全Windows版本搭建安装React Native环境配置

    史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...

  5. 【腾讯Bugly干货分享】React Native项目实战总结

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...

  6. React Native环境搭建以及几个基础控件的使用

    之前写了几篇博客,但是没有从最基础的开始写,现在想了想感觉不太合适,所以现在把基础的一些东西给补上,也算是我从零开始学习RN的经验吧! 一.环境搭建 首先声明一下,本人现在用的编辑器是SublimeT ...

  7. React Native组件介绍

    1.React Native目前已有的组件 ActivityIndicatorIOS:标准的旋转进度轮; DatePickerIOS:日期选择器: Image:图片控件: ListView:列表控件: ...

  8. React Native图片控件的使用

    首先定义组件 import { AppRegistry, StyleSheet, Text, View, Image,} from 'react-native'; 然后将render返回中的模版增加I ...

  9. react-native学习笔记--史上最详细Windows版本搭建安装React Native环境配置

    参考:http://www.lcode.org/react-native/ React native中文网:http://reactnative.cn/docs/0.23/android-setup. ...

  10. windows 7下React Native环境配置

    React Native 是 Facebook 推出的一个用 Java 语言就能同时编写 ios,android,以及后台的一项技术,它可以做到实时热更新 .FaceBook 也号称这们技术是 “Le ...

随机推荐

  1. 第 18 章 CSS 表格与列表

    学习要点: 1.表格样式 2.列表样式 3.其他功能 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 表格和列表,通过表格和列表的样式设置,让表格和列表显示更加多元化. 一.表格样式 表格有五 ...

  2. [moka同学笔记]Yii2.0 modal的使用

    第一次使用,时候不明白什么原理,大概用了几次后,才模模糊糊搞清楚原来是怎么一回事,现在就把写过的代码,贴在下边. 1.在视图文件中, 第一步首先在index.php文件中 做了一个a链接的按钮 调用了 ...

  3. buffer和cache有什么本质区别

    在free命令展示机器的内存消耗情况,会像这样展示

  4. 通过C#来加载X509格式证书文件并生成RSA对象

    private static RSACryptoServiceProvider GetPrivateKey(string priKeyFile, string keyPwd) { var pc = n ...

  5. JAVA多线程之间共享数据BlockingQueue介绍

    在JAVA的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题.通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利. ...

  6. 【我的产品观】开发wangEditor一年总结

    1. 引言 标题说是一周年,其实是不是正好是一周年,我也忘记了,光从github的提交记录看也不准确.印象中觉得,如果要论想法,到现在一年多了,如果要论实际写代码,可能差不多正好一年. 从8月底在济南 ...

  7. HTML5 Maker – 在线轻松制作 HTML5 动画效果

    HTML5 Maker 是一个在线动画制作工具,帮助你使用 HTML,CSS 和 JavaScript 创建动态,互动的内容.它非常容易使用,同时可以帮你实现非常好的效果.它可以制作跨浏览器的动画内容 ...

  8. 【初探移动前端开发05】jQuery Mobile (下)

    前言 继续我们移动端的学习,今天到了List相关了. 本文例子请使用手机查看 List列表 在移动设备平台下,由于移动设备屏幕比较小,我们又是用手在上面点击的触屏方式,传统的列表模式在手机上就不太友好 ...

  9. JavaScript学习笔记3之 数组 & arguments(参数对象)& 数字和字符串转换 & innerText/innerHTML & 鼠标事件

    一.Array数组 1.数组初始化(Array属于对象类型) /*关于数组的初始化*/ //1.创建 Array 对象--方法1: var arr1=[]; arr1[0]='aa';//给数组元素赋 ...

  10. 用JS描述的数据结构及算法表示——栈和队列(基础版)

    前言:找了上课时数据结构的教程来看,但是用的语言是c++,所以具体实现在网上搜大神的博客来看,我看到的大神们的博客都写得特别好,不止讲了最基本的思想和算法实现,更多的是侧重于实例运用,一边看一边在心里 ...