返回

React Native EXPO 本地构建 .aab 捆绑包:分步指南

Android

使用 React Native EXPO 本地构建 .aab 捆绑包

简介

React Native EXPO 是一种构建跨平台移动应用的出色工具。然而,默认情况下,使用 EXPO 本地构建会导致生成 .apk 文件。对于需要使用 Google Play App Bundle(.aab)格式发布应用的开发人员来说,这可能是一个问题。本文将指导您如何配置 EXPO 项目,以便本地构建时生成 .aab 捆绑包。

启用 App Bundle

第一步是启用 App Bundle。为此,请执行以下步骤:

  • 在您的项目目录中安装 expo-app-bundle 插件:
expo install expo-app-bundle
  • app.json 文件中,将 useAppBundle 设置为 true
"expo": {
  "android": {
    "useAppBundle": true
  }
}

配置 Gradle 构建脚本

下一步是配置 android/app/build.gradle 文件。

  • 优化构建:
buildTypes {
  release {
    minifyEnabled true
    proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    signingConfig signingConfigs.release
  }
}
  • 签名信息:
signingConfigs {
  release {
    storeFile file('my-release-key.jks')
    storePassword 'your-password'
    keyAlias 'my-key-alias'
    keyPassword 'your-password'
  }
}
  • 生成签名密钥:
keytool -genkey -v -keystore my-release-key.jks -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

构建 .aab 捆绑包

现在,您可以通过以下命令生成 .aab 捆绑包:

npx expo build:appbundle

生成的 .aab 捆绑包将位于 android/app/build/outputs/bundle/release 文件夹中。

生成 APK(可选)

如果您还需要生成 APK,可以使用以下命令:

npx expo build:apk

生成的 APK 将位于 android/app/build/outputs/apk/release 文件夹中。

结论

通过按照这些步骤操作,您可以轻松地使用 React Native EXPO 本地构建 .aab 捆绑包。这使您能够在 Google Play 上发布您的应用,同时获得 .aab 格式带来的好处,例如更小的下载大小和更好的用户体验。

常见问题解答

Q1:为什么使用 .aab 捆绑包而不是 .apk 文件?
A1:.aab 捆绑包比 .apk 文件更小,并且允许多个设备架构打包在单个捆绑包中,从而提高下载和安装效率。

Q2:是否可以在没有签名密钥的情况下生成 .aab 捆绑包?
A2:否,您需要生成一个签名密钥才能对 .aab 捆绑包进行签名。

Q3:是否可以使用 EXPO CLI 以外的方法生成 .aab 捆绑包?
A3:是的,可以使用 Android Gradle 插件或 Android Studio 来生成 .aab 捆绑包。

Q4:我可以在 iOS 设备上生成 .aab 捆绑包吗?
A4:否,.aab 捆绑包是 Android 特有的格式。iOS 设备使用 .ipa 捆绑包。

Q5:生成 .aab 捆绑包有哪些注意事项?
A5:确保正确配置 Gradle 构建脚本,并使用最新的 Android Gradle 插件和 EXPO 版本。此外,请定期测试您的 .aab 捆绑包,以确保兼容性和性能。