开发工具
编辑
概述 Expo 工具和网站,帮助您在项目构建过程中各个方面。
当你使用 Expo 创建新项目时,了解以下重要工具和网站可以帮助你在应用开发过程中更加顺利。本页面将为你概述一系列推荐工具。
Expo CLI
Expo CLI 是一个开发工具,在你创建新项目时会随着 expo 包自动安装。你可以通过使用 npx(一个 Node.js 包运行器)来使用它。
它旨在帮助你在应用开发阶段更快地推进。例如,你与 Expo CLI 的第一次交互通常是通过运行命令 npx expo start 来启动开发服务器。
以下是你在开发应用时会与 Expo CLI 一起使用的一些常用命令列表:
| 命令 | 描述 |
|---|---|
npx expo start | 启动开发服务器(无论你使用的是开发构建还是 Expo Go)。 |
npx expo prebuild | 使用 Prebuild 生成原生 Android 和 iOS 目录。 |
npx expo run:android | 在本地编译原生 Android 应用。 |
npx expo run:ios | 在本地编译原生 iOS 应用。 |
npx expo install package-name | 用于安装新库,或通过在此命令中添加 --fix 选项来验证并更新项目中的特定库。 |
npx expo lint | 设置并配置 ESLint。如果 ESLint 已经配置好,此命令将对你的项目文件进行 lint 检查 。 |
简而言之,Expo CLI 允许你开发、编译、启动你的应用等。更多可用选项和可执行操作请参见 Expo CLI 参考文档 。
EAS CLI
EAS CLI 用于登录你的 Expo 账号,并通过不同的 EAS 服务(如 Build、Update 或 Submit)编译你的应用。你还可以使用此工具来:
- 将你的应用发布到应用商店
- 创建你的应用的开发、预览或生产版本
- 创建 over-the-air(OTA)更新
- 管理你的应用凭证
- 为 iOS 设备创建临时配置文件
要使用 EAS CLI,您需要在本地机器上全局安装它,运行以下命令:
- npm install -g eas-cli您可以在终端窗口中使用 eas --help 了解更多可用命令。完整参考请参见 eas-cli npm 页面 。
Expo Doctor
Expo Doctor 是一个用于诊断 Expo 项目问题的命令行工具。要使用它,请在项目的根目录下运行以下命令:
- npx expo-doctor此命令会检查并分析你的项目代码库中常见的问题,包括 应用配置 和 package.json 文件、依赖兼容性、配置文件以及项目的整体健康状况。检查完成后,Expo Doctor 会输出结果。
如果 Expo Doctor 发现问题,它会提供问题的描述,并给出修复建议或寻求帮助的途径。
默认情况下,Expo Doctor 会根据 React Native 目录验证你项目的包,并在存在原生目录时检查 app 配置属性是否正确同步。你可以在项目的 package.json 文件中配置这些检查。详细信息请参阅 reactNativeDirectoryCheck 和 appConfigFieldsNotSyncedCheck。
你也可以使用 npx expo-doctor --help 来显示使用信息。
Orbit
Orbit 是一款适用于 macOS 和 Windows 的应用程序,能够:
- 在实体设备和模拟器上安装并启动来自 EAS 的构建。
- 在 Android 模拟器或 iOS 模拟器上安装并启动来自 EAS 的更新。
- 在 Android 模拟器或 iOS 模拟器上启动 snack 项目。
- 使用本地文件安装和启动应用。Orbit 支持任何 Android .apk、iOS Simulator 兼容的 .app,或临时签名的应用。
- 在你的 EAS 仪表盘中查看已固定项目列表。
安装
你可以通过 Homebrew 在 macOS 上下载 Orbit,或直接从 GitHub releases 获取。
- brew install expo-orbit如果你希望 Orbit 在登录时自动启动,请点击菜单栏中的 Orbit 图标,然后进入 设置 ,选择 登录时启动 选项。
Windows 版 Orbit 目前为预览版,仅兼容 x64 和 x86 机器。未来将会支持其他架构。
你可以直接从 GitHub releases 下载 Windows 版 Orbit。
Expo Tools for VS Code
Expo Tools 是一个 VS Code 扩展,可以提升你在处理应用配置文件时的开发体验。它为应用配置、EAS 配置、商店配置和 Expo Module 配置等文件提供自动补全和智能感知等功能。
Use this link to install the extension or search Expo Tools directly in your VS Code editor.
你还可以使用 VS Code 内置的调试器来调试你的应用程序,设置断点、检查变量、通过调试控制台执行代码等。关于如何使用此扩展进行调试,请参阅 使用 VS Code 进行调试 。
使用 Snack 和 Expo Go 测试原型
Snack
Snack 是一个浏览器内的开发环境,工作方式类似于 Expo Go。它是分享代码片段和在不下载任何工具到电脑上的情况下尝试 React Native 的绝佳方式。
要使用它,请访问 snack.expo.dev,编辑 App.js 中的 <Text> 组件,在右侧面板选择一个平台(Android、iOS 或 web),即可实时查看更改效果。
Expo Go
Expo Go 是一个免费的开源沙盒,用于学习和实验 React Native。它支持 Android 和 iOS。
有关如何使用它的更多信息:
- 点击此链接前往设置您的环境指南
- 在您想在哪里进行开发? 下选择一个平台
- 在您想如何进行开发? 下选择 Expo Go
- 按照该指南中描述的说明进行操作
注意: 不建议用于构建和分发生产环境的应用到应用商店。请改用开发构建 。
What if I open a project with an unsupported SDK version?
当你在 Expo Go 中运行一个为不受支持的 SDK 版本创建的项目时,你会看到以下错误:
"Project is incompatible with this version of Expo Go"
How do I upgrade my project from an unsupported SDK version?
“项目与此版本的 Expo Go 不兼容”
为了解决这个问题,建议将你的项目升级到受支持的 SDK 版本 。如果你想了解如何操作,请参阅将项目升级到新的 SDK 版本 。
How do I upgrade my project from an unsupported SDK version?
请参阅升级 Expo SDK 指南 ,获取升级到特定 SDK 版本的操作说明。
React Native 目录
当你使用开发构建来创建项目时,任何兼容 React Native 的库都可以在 Expo 项目中使用。
reactnative.directory 是一个可搜索的 React Native 库数据库。如果你需要的库未包含在 Expo SDK 中,可以使用该目录为你的项目查找兼容的库。
See this guide to learn more about the difference between React Native core libraries, Expo SDK libraries, and third-party libraries. It also explains how to determine third-party library compatibility.