Expo大作战(四)--快速用expo构建一个app,expo中的关键术语

简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网
我猜去全部机翻+个人修改补充+demo测试的形式,对expo进行一次大补血!欢迎加入expo兴趣学习交流群:597732981
【之前我写过一些列关于expo和rn入门配置的东i西,大家可以点击这里查看:从零学习rn开发】
相关文章:
Expo大作战(一)--什么是expo,如何安装expo clinet和xde,xde如何使用
Expo大作战(二)--expo的生命周期,expo社区交流方式,expo学习必备资源,开发使用expo时关注的一些问题
Expo大作战(三)--针对已经开发过react native项目开发人员有针对性的介绍了expo,expo的局限性,开发时项目选型注意点等
Expo大作战(四)--快速用expo构建一个app,expo中的关键术语
Expo大作战(五)--expo中app.json 文件的配置信息
Expo大作战(六)--expo开发模式,expo中exp命令行工具,expo中如何查看日志log,expo中的调试方式
Expo大作战(七)--expo如何使用Genymotion模拟器
Expo大作战(八)--expo中的publish以及expo中的link,对link这块东西没有详细看,大家可以来和我交流
接下来就开始撸码
用expo工作
本节中的文章详细介绍了如何使用expo开发环境和工具的各个方面。
如果您对expo完全陌生,请确保您安装了这些工具并进行了环视。 之后,您可能需要阅读并运行以创建您的第一个项目。
正在运行 (up and running)
本指南的目标是尽快启动并运行expo应用程序。
在这一点上,我们应该在我们的开发机器和Expo客户端上安装XDE,安装在iOS或Android物理设备或仿真器上。如果不是,继续操作之前请返回安装指南。
好吧,让我们开始吧。
创建一个帐户
打开XDE后,系统将提示您输入用户名和密码。用你想要的用户名和密码填写并点击继续 - 如果用户名尚未被使用,我们会自动为你创建帐户。
创建项目
按下Project并选择New Project,然后选择Tab Navigation选项,因为这会给我们一个很好的起点,然后在弹出的对话框中输入项目的名称。然后按创建。
接下来,选择保存项目的位置。我将所有有趣的项目保存在〜/coding这个目录下,因此我浏览到该目录并按下打开。
XDE现在正在初始化所选目录中的一个新项目:它复制一个基本模板并安装反应,react-native和expo。
当项目初始化并准备就绪时,您将在XDE日志中看到消息“React packager ready”。
“React packager”是一个简单的HTTP服务器,它使用Babel编译我们的应用程序JavaScript代码并将其提供给Expo应用程序。
注意:如果您在MacOS上并且XDE卡住“等待打包程序和隧道启动”,则可能需要在您的机器上安装(watchman)。最简单的方法是使用Homebrew,
brew install watchman
在手机或模拟器上打开应用程序
你会看到XDE向你显示了一个像http://4v-9wa.notbrent.mynewproject.exp.direct:80这样的URL--随意在浏览器中打开它,你会发现它提供了一些JSON。这个JSON是expo的表现。我们可以打开我们的应用程序,在我们的手机上打开expo应用程序,在地址栏中输入此网址。或者,按分享,输入您的电话号码,然后按发送链接。打开手机上的信息并点击链接在expo上打开它。您可以与安装了展会应用程序的其他人共享此链接,但只有在XDE中打开该项目时才可以使用该链接。
要在iOS模拟器中打开应用程序,您可以按设备按钮并选择在iOS模拟器上打开(仅适用于macOS)。要在Android模拟器中打开该应用程序,请先启动它,然后按设备并在Android上打开。
进行第一次改变
在新项目中打开屏幕/ HomeScreen.js,并更改render()函数中的任何文本。你应该看到你的应用程序重新加载你的更改。
无法看到您的更改?
实时重新加载在默认情况下是启用的,但是我们只要确保我们继续执行这些步骤即可启用它,以防万一某些事情不起作用。
- 首先,确保在XDE中启用了开发模式。
- 接下来,关闭应用程序并重新打开它。
- 一旦应用程序再次打开,摇动您的设备以显示开发者菜单。如果您正在使用模拟器,请按⌘+ d用于iOS,或按Ctrl + m用于Android。
- 如果您看到启用Live Reload,请按下它并重新加载您的应用程序。如果您看到禁用Live Reload,请退出开发者菜单并尝试进行其他更改。应用内开发者菜单

手动重新加载应用程序
如果您已按照上述步骤进行操作,并且实时重新加载仍然无效,请按XDE右下方的按钮向我们发送支持请求。在我们为您解决问题之前,您可以摇动设备并按下重新加载,也可以使用以下工具之一,这两种工具都可以在没有开发模式的情况下使用。 使用expo按钮刷新

祝贺
您已经创建了一个新的expo项目,进行了更改,并将其更新。
下面介绍一些expo里面的专业术语
app.json
app.json是一个存在于每个世博项目中的文件,它用于配置您的项目,例如名称,图标和启动画面。阅读“使用app.json进行配置”
create-react-native-app
React Native等同于create-react-app。让您设置并创建一个React Native应用程序,不需要任何构建配置,它使用Expo来完成此任务。阅读“Expo&Create React Native App”中的更多内容。
分离(detch)
expo中使用术语“分离”来描述标准expo开发环境的舒适舒适,您不必处理构建配置或本地代码。当你从expo“分离”的时候,你可以使用ExpoKit获得本地项目,所以你可以继续使用expoAPI来构建你的项目,但是现在你的工作流程就像在没有expo的情况下构建React Native应用程序一样。详情请参阅“拆卸expo”。
eject
术语“eject”通过create-react-app进行推广,并用于create-react-native-app。当你“抛出”你的项目时,你会采取比分离更极端的步骤 - 你无法使用expoAPI并完全离开expo环境。阅读有关eject的更多信息。
模拟器
模拟器用于描述计算机上Android设备的软件模拟器。通常iOS仿真器被称为模拟器。
EXP
与expo合作的命令行工具。阅读更多。
Experience
应用程序的同义词通常意味着更多的单一用途和更小的范围,有时是艺术性的和异想天开的。
expo clent
运行Expo应用程序的iOS和Android应用程序。当您想在Expo Client外部运行您的应用并将其部署到App和/或Play商店时,您可以构建一个独立应用。
expo SDK
Expo软件开发工具包(SDK)提供对设备/系统功能的访问,如相机,推送通知,联系人,文件系统等。滚动到文档导航中的SDK API参考,查看API的完整列表并浏览它们。阅读有关Expo SDK的更多信息。在Github上找到它。
ExpoKit
ExpoKit是一个Objective-C和Java库,允许您使用Expo SDK和平台以及现有的Expo项目作为更大的标准本地项目的一部分 - 您通常使用Xcode,Android Studio或react-native init创建的项目。阅读更多。
iOS版
iPhone,iPad和Apple TV上使用的操作系统。expo目前在iOS和iPhone上运行。
Linking
linking可能意味着深入链接到应用程序,类似于您链接到网站上的网站或链接本地库到您分离的ExpoKit应用程序。
Manifest(清单)
expo应用程序清单类似于Web应用程序清单 - 它提供expo需要知道如何运行应用程序和其他相关数据的信息。阅读更多“expo如何运作”。
原生目录(Native Directory)
React Native生态系统拥有数千个库。如果没有专用的工具,很难知道这些库是什么,搜索它们,确定质量,尝试它们,并筛选出不适合您项目的库(有些不适用于expo,有些不适用于Android或iOS)。 Native Directory是一个旨在解决此问题的网站,我们建议您使用它来查找要在项目中使用的包。
NPM
npm是JavaScript的包管理器和存储包的注册表。我们在世博会内部使用的替代包装经理是纱线。
无线更新(Over the Air updates)
传统上,iOS和Android应用通过向App和Play商店提交更新后的二进制文件进行更新。无线(OTA)更新允许您将更新推送到您的应用程序,而无需向商店提交新版本的开销。在“发布”中阅读更多内容。
包管理器(Package Manager)
从项目中自动执行安装,升级,配置和删除库(也称为依赖项)的过程。见npm和yarn。
发布
我们使用“发布”一词作为“部署”的同义词。当您发布应用程序时,它可以通过expo客户端的持久URL访问,或者在独立应用程序的情况下,它可以通过无线方式更新应用程序。
React Native
“React Native可让您仅使用JavaScript构建移动应用程序。它使用与React相同的设计,让您从声明性组件构建丰富的移动UI。“了解更多信息。
Shell App
我们偶尔用于独立应用程序的另一个术语,和Standalone app 一个意识。
模拟器 (Simulator)
iOS设备的模拟器,您可以在macOS(或Snack)上运行,以便在您的应用程序上工作,而无需使用物理设备。
Slug
我们在app.json中使用“slug”一词来指代您的应用在其网址中使用的名称。例如,本地组件列表应用程序位于https://expo.io/@community/native-component-list并且slug是 “ native-component-list.”。
Snack
Snack是一种浏览器内开发环境,您可以在无需在手机或计算机上安装任何工具的情况下构建expo exprience。
Standalone app
可以提交给iOS App Store或Android Play商店的应用程序二进制文件。 阅读“构建独立应用程序”。
XDE
一个带有图形用户界面(GUI)的桌面工具,用于与expo项目合作。 它具有与exp CLI工具大致相同的功能,但适用于更适合使用GUI的人员。
Yarn
JavaScript的包管理器。 阅读更多。
下一张继续介绍,这一篇主要介绍了:快速用expo构建一个app,expo中的关键术语!欢迎大家关注我的微信公众号,这篇文章是否被大家认可,我的衡量标准就是公
众号粉丝增长人数。欢迎大家转载,但必须保留本人博客链接!

Expo大作战(四)--快速用expo构建一个app,expo中的关键术语的更多相关文章
- Expo大作战(四十一)【完】--expo sdk 之 Assets,BarCodeScanner,AppLoading
Expo大作战系列完结! 简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与 ...
- Expo大作战(四十)--expo sdk api之 Calendar,Constants
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十四)--expo sdk api之LinearGradient(线性渐变),KeepAwake(保持屏幕不休眠),IntentLauncherAndroid,Gyroscope,
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(二十四)--expo sdk api之Accelerometer
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(十四)--expo中消息推送的实现
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十九)--expo sdk api之 DocumentPicker,Contacts(获取手机联系人信息),Branch
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十八)--expo sdk api之 FileSystem(文件操作系统)
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十七)--expo sdk api之 GLView,GestureHandler,Font,Fingerprint,DeviceMotion,Brightness
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- Expo大作战(三十六)--expo sdk api之 ImagePicker,ImageManipulator,Camera
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
随机推荐
- 编程珠玑第一章的算法,Java实现,通俗易懂
该算法也就是所谓的位图算法,用一个int表示32位,也就是实际值为1~32的数. 按照书里说的, 该算法只适合内存有限,而磁盘和时间不限,且数字在1~MAX之间不重复的排序. package demo ...
- gridvew使用技巧2
GridVew1_RowDataBindGridView1.DataKeys[e.Row.RowIndex].Values[].ToString(); foreach (GridViewRow t i ...
- 【转】谷歌三大核心技术(三)Google BigTable中文版
谷歌三大核心技术(三)Google BigTable中文版 摘要 Bigtable 是一个分布式的结构化数据存储系统,它被设计用来处理海量数据:通常是分布在数千台普通服务器上的PB级的数据.Goo ...
- Python基础内容
1.注释 #单行注释 ‘“多行注释”’ 2.变量 Python没有声明变量的过程(动态类型) 变量名=值,如果是浮点数就定义为浮点类型,如果是整型就定义为整型,如果是字符串就定义为字符串 3.输入和输 ...
- SVN安装后,右键不显示SVN菜单项
打开svn->setting对话框,找到Icon Overlays, show overlays and context menu only explorer当中显示, 重启电脑.配置如下所示:
- maven-compiler-plugin 指定jdk的版本和编码
为了让maven的jdk编译版本一致, 使用maven-compiler-plugin插件来协助管理 建议新建maven项目后的第一步就是配置该插件 <build> <plugins ...
- SpringMvc @RequestParam 使用推荐使用包装类型代替包装类型
SpringMvc 中@RequestParam注解使用 建议使用包装类型来代替基本数据类型 public String form2(@RequestParam(name="age" ...
- 几种常见算法的Python实现
1.选择排序 选择排序是一种简单直观的排序算法.它的原理是这样:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的后 ...
- MVC删除操作前confirm提示
本段时间,忙于公司的ERP问题,博客也没有怎样更新了.昨晚于家中学习了MVC时,对删除记录前,让用户有后悔选择.即是说,能先给用户一个提示,然后再让用户决定是否删除记录.以前练习MVC,对删除记录,均 ...
- AngularJS学习笔记(四)内置指令
说说指令 不得不赞叹,指令是ng最为强大的功能之一,好吧,也可以去掉之一,是最强大的功能.ng内置了许多自定义的指令,这避免了我们自己去造轮子.同时,ng也提供了自定义指令的功能,可以让我们的页面元素 ...