在云端配置开发构建
编辑页面
了解如何使用 EAS Build 为项目配置开发构建。
For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.
在本章中,我们将为示例应用设置并配置一个使用 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 bundler。在终端窗口中,我们会看到二维码,随后是 Metro waiting on... 和一个 manifest URL:
让我们注意安装 expo-dev-client 库后的变化:
- manifest URL 中包含
expo-development-client以及应用 scheme - 开发服务器现在是为开发构建运行的(而不是 Expo Go)。
由于我们在任何设备或模拟器/仿真器上都还没有安装开发构建,所以目前还无法运行项目。
2
初始化开发构建
安装 EAS CLI
我们需要在本地机器上将 EAS Command Line Interface(CLI)工具作为全局依赖安装。运行以下命令:
- npm install -g eas-cli登录或注册 Expo 账户
如果你已有 Expo 账户,并且已经使用 Expo CLI 登录,请跳过此步骤。如果你还没有 Expo 账户,请先在此注册,然后继续执行下面描述的登录命令。
要登录,请运行以下命令:
- eas login该命令会要求我们输入 Expo 账户的邮箱或用户名以及密码来完成登录。
初始化并将项目链接到 EAS
对于任何新项目,第一步都是初始化并将其链接到 EAS 服务器。运行以下命令:
- eas init运行时,此命令会:
- 通过输入我们的 Expo 账户凭据来请求验证账户所有者身份,并询问我们是否要创建一个新的 EAS 项目:
# 运行 eas init 后的输出✔ Which account should own this project? > your-username✔ Would you like to create a project for @your-username/sticker-smash? … yes✔ Created @your-username/sticker-smash✔ Project successfully linked (ID: XXXX-XX-XX-XXXX) (modified app.json)- 创建 EAS 项目,并提供该项目的链接,我们可以在 EAS 仪表板中打开它:
- 生成一个唯一的
projectId,并将该 EAS 项目链接到我们开发机器上的示例应用。 - 修改 app.json,加入
extra.eas.projectId,并将其值更新为创建的唯一 ID。
3
为 EAS Build 配置项目
要为 EAS Build 设置我们的项目,请运行以下命令:
- eas build:configure运行时,此命令会:
- 提示选择平台:Android、iOS 或 All。由于我们要创建 Android 和 iOS 应用,选择 All。
- 在项目目录根目录创建 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
我们成功使用 EAS CLI 初始化并配置了项目,将其链接到 EAS 服务器,并准备了一个开发构建。
在下一章中,我们将为 Android 创建一个开发构建,将其安装到设备和模拟器上,并使用开发服务器运行它。