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
开发阶段为移动应用开发提供类似 Web 的迭代速度。允许使用客户端应用对 Expo SDK 项目进行快速迭代和测试。
协作通过共享原生运行时便于团队测试。可通过设备上的二维码轻松共享项目。
第三方库支持完全支持任何第三方库,包括那些需要自定义原生代码的库。仅限于 Expo SDK 内的库,不适合自定义原生依赖。
自定义通过 配置插件 和直接访问原生代码进行广泛自定义。自定义能力有限,侧重于 Expo SDK 功能,不能直接修改原生代码。
预期用途适合面向上架商店的完整应用开发,提供完整的开发环境和工具。适合学习、原型设计和实验。不建议用于生产应用。

1

安装 expo-dev-client 库

要为开发构建初始化我们的项目,先在项目目录中 cd 进去,然后运行以下命令来安装该库:

Terminal
npx expo install expo-dev-client

启动开发服务器

运行 npx expo start 来启动 开发服务器

Terminal
npx expo start

该命令会启动 Metro 打包器。在终端窗口中,我们会看到二维码,随后是 Metro waiting on... 和一个清单 URL:

让我们注意安装 expo-dev-client 库后的变化:

  • 清单 URL 中包含 expo-development-client 以及应用 scheme
  • 开发服务器现在是为开发构建运行的(而不是 Expo Go)。

由于我们在任何设备或模拟器/仿真器上还没有安装开发构建,所以目前还无法运行项目。

2

初始化开发构建

安装 EAS CLI

我们需要在本地机器上将 EAS 命令行界面(CLI)工具作为全局依赖安装。运行以下命令:

Terminal
npm install --global eas-cli

登录或注册 Expo 账户

要登录,请运行以下命令:

Terminal
eas login

该命令会要求我们输入 Expo 账户的邮箱或用户名以及密码来完成登录。

初始化并将项目链接到 EAS

对于任何新项目,第一步都是初始化并将其链接到 EAS 服务器。运行以下命令:

Terminal
eas init

运行时,此命令会:

  • 通过输入我们的 Expo 账户凭据来请求验证账户所有者身份,并询问我们是否要创建一个新的 EAS 项目:
Terminal
# 运行 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。
什么是 app.json 中的 projectId

eas init 运行时,它会在 app.jsonextra.eas.projectId 下为我们的项目关联一个唯一标识符。这个属性的值用于在 EAS 服务器上标识我们的项目。

{ "extra": { "eas": { "projectId": "0cd3da2d-xxx-xxx-xxx-xxxxxxxxxx" } } }

3

为 EAS Build 配置项目

要为 EAS Build 设置我们的项目,请运行以下命令:

Terminal
eas build:configure

运行时,此命令会:

  • 提示选择平台:AndroidiOS全部。由于我们要创建 Android 和 iOS 应用,选择 全部
  • 在项目目录根目录创建 eas.json,其配置如下:
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 版本。
  • 添加三个构建配置文件developmentpreviewproduction
进一步了解 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.

Next: Chapter 2: Create and run a cloud build for Android