为 iOS 模拟器创建并运行云构建

编辑页面

了解如何使用 EAS Build 为 iOS 模拟器配置开发构建。


For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.

在本章中,我们将创建一个可以通过 EAS Build 在 iOS 模拟器上运行的开发构建。

iOS 模拟器的开发构建会生成 .app 格式,这与 iOS 设备不同。

观看:为 iOS 模拟器创建开发构建
观看:为 iOS 模拟器创建开发构建

了解如何在 eas.json 中创建模拟器构建配置文件,并在 iOS 模拟器上运行开发构建。


在 eas.json 中创建模拟器构建配置文件

eas.json 中,添加一个名为 ios-simulator 的新构建配置文件,并设置 ios.simulator 属性。将其值设为 true

eas.json
{ "build": { "development": { %%placeholder-start%%... %%placeholder-end%% }, "ios-simulator": { "ios": { "simulator": true } } } }

对于开发构建,配置文件中需要定义 developmentClientdistribution 属性。为了避免冗余,我们可以扩展 development 配置文件的属性:

eas.json
{ "ios-simulator": { "extends": "development", "ios": { "simulator": true } } }

iOS 模拟器开发构建

1

创建

运行 eas build 命令,并将 ios 作为平台,将 ios-simulator 作为构建配置文件:

Terminal
eas build --platform ios --profile ios-simulator

首次创建构建时,此命令会提示我们回答以下问题:

  • 您希望 iOS bundle 标识符是什么?return 选择此提示提供的默认值。这会在 app.json 中添加 ios.bundleIdentifier
  • iOS 应用仅使用标准/豁免加密吗?Y 选择此提示提供的默认值。由于我们的应用不使用加密,它会将 Info.plist 文件中的 ITSAppUsesNonExemptEncryption 设置为 NO,并在您将应用发布到 TestFlight/Apple App Store 时为此项处理合规性检查。在发布您自己的应用时,如果它使用了加密,您可以选择 N,以便下次跳过此提示。

在回答提示后,我们的 EAS Build 会进入队列,EAS CLI 会提供一个链接,用于查看构建详细信息并在 EAS 控制台上跟踪进度:

构建详情页面包含什么?

构建详情页面会显示构建类型、配置文件、Expo SDK 版本、应用版本、构建号、最后一次提交哈希,以及发起构建的开发者或账号所有者身份。

在上图中,Build artifact 的当前状态显示构建正在进行中。完成后,此部分将提供下载构建的选项。Logs 概述了 EAS Build 上 iOS 构建过程中执行的每一步。为了简洁起见,我们不会在这里逐步展开说明。要了解更多信息,请参阅 iOS 构建流程

什么是 iOS bundle 标识符?

ios.bundleIdentifier 是我们应用的唯一名称。如果我们现在发布应用,Apple App Store 会使用此属性及其值来识别商店中的应用。

这种命名方式定义为 host.owner.app-name。例如,我们的示例应用使用的是 com.owner.stickersmash,其中 com.owner 是域名,stickersmash 是我们的应用名称。

2

安装

在终端中,构建完成后,EAS CLI 会提示我们是否要在 iOS 模拟器上运行该构建。按 Y

替代方案:使用 Expo Orbit

您可以使用 Expo Orbit 来安装开发构建。在 EAS 控制台的 Build artifact 中,点击 Open with Expo Orbit 即可将开发构建安装到 iOS 模拟器上。

3

运行

在项目目录中运行 npx expo start 命令来启动开发服务器:

Terminal
npx expo start

在终端窗口中按 i 可在 iOS 模拟器上打开项目。

总结

Chapter 3: Create and run a cloud build for iOS Simulator

我们已成功使用 EAS Build 在 iOS 模拟器上创建并运行开发构建。

在下一章中,我们将为 iOS 创建一个开发构建,将其安装到设备上,并让它运行起来。

Next: 为 iOS 设备创建并运行云构建