This documentation is available as Markdown for AI agents and LLMs. See the full Markdown index or append .md to any documentation URL.

在本地创建发布构建

编辑页面

了解如何为你的 Expo 应用在本地创建发布(生产)构建。


要在本地创建应用的发布构建(也称为生产构建),你需要在自己的电脑上分别执行一些步骤,并使用创建任何原生应用所需的工具。本指南提供了 Android 和 iOS 所需的步骤。

Android

要在本地为 Android 创建发布构建,需要使用 上传密钥 对其进行签名,并生成 Android Application Bundle(.aab)。请按以下步骤操作:

Prerequisites

2 requirements

1.

已安装 OpenJDK

安装一个 OpenJDK 发行版 以便使用 keytool 命令。

2.

已生成 android 目录

如果你正在使用 Continuous Native Generation (CNG), 运行 npx expo prebuild 来生成它。

1

创建上传密钥

已经使用 EAS Build 创建过构建?下载你的凭据并跳到下一步。

如果你已经使用 EAS Build 创建过构建,请按照以下步骤下载包含上传密钥及其密码、密钥别名和密钥密码的凭据:

  1. 在终端中运行 eas credentials -p android 并选择构建配置文件。
  2. 选择 credentials.json > Download credentials from EAS to credentials.json
  3. 将下载的 keystore.jks 文件移动到 android/app 目录。
  4. credentials.json 中复制上传 keystore 密码、密钥别名和密钥密码的值,因为下一步需要用到它们。

在你的 Expo 项目目录中,运行以下 keytool 命令来创建上传密钥:

Terminal
sudo keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

运行此命令后,系统会提示你为 keystore 输入密码。此密码将用于保护上传密钥。请记住你在这里输入的密码,因为下一步会用到它。

此命令还会在你的项目目录中生成名为 my-upload-key.keystore 的 keystore 文件。将它移动到 android/app 目录。

2

更新 gradle 变量

打开 android/gradle.properties 文件,并在文件末尾添加以下 gradle 变量。将 ***** 替换为你在上一步提供的正确 keystore 密码和密钥密码。

这些变量包含关于上传密钥的信息:

android/gradle.properties
# 如果你是通过 `eas credentials` 命令下载的凭据,请参阅下面每个值的注释。 # 指向 "keystore" 文件的路径 MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore # 请替换为 credentials.json 文件中 `keystore.keyAlias` 字段的值 MYAPP_UPLOAD_KEY_ALIAS=my-key-alias # 请替换为 credentials.json 文件中 `keystore.password` 字段的值 MYAPP_UPLOAD_STORE_PASSWORD=***** # 请替换为 credentials.json 文件中 `keystore.keyPassword` 字段的值 MYAPP_UPLOAD_KEY_PASSWORD=*****

3

将签名配置添加到 build.gradle

打开 android/app/build.gradle 文件并添加以下配置:

4

生成发布版 Android Application Bundle(aab)

进入 android 目录,并通过运行 Gradle 的 bundleRelease 命令来创建 .aab 格式的发布构建:

Terminal
cd android

./gradlew app:bundleRelease

此命令会在 android/app/build/outputs/bundle/release 目录中生成 app-release.aab。

5

将应用提交到 Google Play Console

要提交 .aab 文件,请通过 Google Play Console 手动上传。或者,EAS Submit 支持使用 eas submit --platform android --path ./my-app.aab 提交本地构建的二进制文件。

手动提交 Android 应用

按照分步指南,首次手动将应用提交到 Google Play 商店。

iOS

要在本地创建 iOS 发布版本,请使用 Xcode,它会处理签名并上传到 App Store Connect。请参阅手动提交指南,按照完整流程完成操作,包括配置发布方案、将应用归档并上传:

使用 Xcode 手动提交 iOS 应用

配置签名,使用 Xcode 将应用归档,并上传到 App Store Connect。