This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.
在云端配置开发构建
编辑页面
了解如何使用 EAS Build 为项目配置开发构建。
在本章中,我们将为示例应用设置并配置一个使用 EAS 的开发构建。

了解如何安装 expo-dev-client、在 eas.json 中配置构建配置文件,以及如何使用 EAS Build 创建你的第一个开发构建。
了解开发构建
让我们先了解什么是开发构建,以及为什么我们需要它们。
开发构建 是我们项目的调试版本。它针对在创建应用时进行快速迭代进行了优化。它包含 expo-dev-client 库,提供了一个强大而完整的开发环境。这个设置使我们能够根据需要集成任何原生库,或修改 原生目录 中的代码。
关键亮点
注意: 如果你熟悉 Expo Go,可以将开发构建理解为一个可定制的 Expo Go 版本,它是专为项目需求而独特定制的。
| 功能 | 开发构建 | Expo Go |
|---|---|---|
| 开发阶段 | 为移动应用开发提供类似 Web 的迭代速度。 | 允许使用客户端应用对 Expo SDK 项目进行快速迭代和测试。 |
| 协作 | 通过共享原生运行时便于团队测试。 | 可通过设备上的二维码轻松共享项目。 |
| 第三方库支持 | 完全支持任何第三方库,包括那些需要自定义原生代码的库。 | 仅限于 Expo SDK 内的库,不适合自定义原生依赖。 |
| 自定义 | 通过 配置插件 和直接访问原生代码进行广泛自定义。 | 自定义能力有限,侧重于 Expo SDK 功能,不能直接修改原生代码。 |
| 预期用途 | 适合面向上架商店的完整应用开发,提供完整的开发环境和工具。 | 适合学习、原型设计和实验。不建议用于生产应用。 |
1
安装 expo-dev-client 库
要为开发构建初始化我们的项目,先在项目目录中 cd 进去,然后运行以下命令来安装该库:
- npx expo install expo-dev-client启动开发服务器
运行 npx expo start 来启动 开发服务器:
- npx expo start该命令会启动 Metro 打包器。在终端窗口中,我们会看到二维码,随后是 Metro waiting on... 和一个清单 URL:
让我们注意安装 expo-dev-client 库后的变化:
- 清单 URL 中包含
expo-development-client以及应用 scheme - 开发服务器现在是为开发构建运行的(而不是 Expo Go)。
由于我们在任何设备或模拟器/仿真器上还没有安装开发构建,所以目前还无法运行项目。
2
初始化开发构建
安装 EAS CLI
我们需要在本地机器上将 EAS 命令行界面(CLI)工具作为全局依赖安装。运行以下命令:
- npm install --global eas-cli登录或注册 Expo 账户
如果你已有 Expo 账户,并且已经使用 Expo CLI 登录,请跳过此步骤。如果你还没有 Expo 账户,请先在此注册,然后继续执行下面描述的登录命令。
要登录,请运行以下命令:
- eas login该命令会要求我们输入 Expo 账户的邮箱或用户名以及密码来完成登录。
初始化并将项目链接到 EAS
对于任何新项目,第一步都是初始化并将其链接到 EAS 服务器。运行以下命令:
- eas init运行时,此命令会:
- 通过输入我们的 Expo 账户凭据来请求验证账户所有者身份,并询问我们是否要创建一个新的 EAS 项目:
# 运行 eas init 后的输出✔ 应由哪个账户拥有此项目? > your-username✔ 是否要为 @your-username/sticker-smash 创建一个项目? … 是✔ 已创建 @your-username/sticker-smash✔ 项目已成功链接(ID: XXXX-XX-XX-XXXX)(已修改 app.json)- 创建 EAS 项目,并提供该项目的链接,我们可以在 EAS 仪表板中打开它:
- 生成一个唯一的
projectId,并将该 EAS 项目链接到我们开发机器上的示例应用。 - 修改 app.json,加入
extra.eas.projectId,并将其值更新为创建的唯一 ID。
3
为 EAS Build 配置项目
要为 EAS Build 设置我们的项目,请运行以下命令:
- eas build:configure运行时,此命令会:
- 提示选择平台:Android、iOS 或 全部。由于我们要创建 Android 和 iOS 应用,选择 全部。
- 在项目目录根目录创建 eas.json,其配置如下:
{ "cli": { "version": ">= 16.18.0", "appVersionSource": "remote" }, "build": { "development": { "developmentClient": true, "distribution": "internal" }, "preview": { "distribution": "internal" }, "production": { "autoIncrement": true } }, "submit": { "production": {} } }
这是新项目中 eas.json 的默认配置。它做了两件事:
- 定义当前 EAS CLI 版本。
- 添加三个构建配置文件:
development、preview和production。
进一步了解 development 配置文件
eas.json 是不同构建配置文件的集合。每个配置文件都针对特定配置进行定制,以生成特定类型的构建。这些配置文件也可以包含 Android 或 iOS 的平台特定设置。
目前,我们关注的是 development 配置文件,它包含以下配置:
developmentClient:启用(true)以创建调试构建。它使用expo-dev-client库加载应用,该库提供开发工具,并生成可供设备或模拟器/仿真器安装的构建产物,同时由于它支持动态更新 JavaScript,因此允许用于本地开发。distribution:配置为internal,表示我们希望在内部共享该构建(而不是上传到应用商店)。
注意:构建提供了广泛的自定义选项,包括平台特定设置,以及在不同构建配置文件之间扩展配置的能力。了解更多关于自定义构建配置文件的信息。
总结
Chapter 1: Configure development build in cloud
We successfully used the EAS CLI to initialize, and configure our project, link it to EAS servers, and prepare a development build.
In the next chapter, let's create a development build for Android, install it on a device and an emulator, and get it running with the development server.