在 Android Studio 中导出 Android 项目(通常指生成可发布的 APK 或 AAB 文件)的步骤如下:
1. 生成签名密钥(Keystore)
- 如果项目首次发布,需创建签名密钥文件(.jks 或 .keystore)。
- 通过 Android Studio 的 Build → Generate Signed Bundle/APK 选择 Create new 密钥。
- 填写密钥别名(Alias)、密码、有效期和证书信息(如组织名称、国家代码等),密钥算法推荐 RSA 2048。
2. 配置 Gradle 签名信息
- 在模块级 `build.gradle` 的 `android` 闭包中添加签名配置:
gradle
signingConfigs {
release {
storeFile file("path/to/keystore.jks")
storePassword "password"
keyAlias "alias"
keyPassword "key_password"
}
}
- 在 `buildTypes` 的 `release` 中引用签名配置:
gradle
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true // 启用代码混淆
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
3. 生成 APK 或 App Bundle (AAB)
- APK 导出:
- 选择 Build → Generate Signed Bundle/APK → 勾选 APK → 选择签名配置 → 指定输出路径。
- 构建完成后,默认生成 `app-release.apk` 文件。
- AAB 导出(推荐上架 Google Play):
- 同上流程,勾选 Android App Bundle,构建后生成 `.aab` 文件。
4. 其他导出方式
- 命令行构建:
在项目根目录执行:
bash
./gradlew assembleRelease # 生成 APK
./gradlew bundleRelease # 生成 AAB
- Instant App 支持:
若项目支持即时应用,需在 `build.gradle` 中配置 `dynamicFeatures`,并导出 Instant App Bundle。
5. 导出前的检查
- 版本号更新:确保 `build.gradle` 中的 `versionCode` 和 `versionName` 已递增。
- 清单文件配置:检查 `AndroidManifest.xml` 中的权限、启动Activity和Meta数据(如应用密钥)。
- 资源优化:清理未使用的资源(通过 `shrinkResources true`),减少包体积。
6. 测试与验证
- 导出后需在真机或模拟器安装测试,确认签名无误(可通过 `jarsigner -verify` 命令验证 APK 签名)。
- 使用 Google Play App Signing 时,需上传密钥并遵循 Google 的签名方案。
7. 后续维护
- 备份密钥文件并妥善保管密码,丢失将导致无法更新应用。
- 考虑使用 CI/CD 工具(如 Jenkins、GitHub Actions)自动化构建和签名流程。
导出过程中若遇到问题,可检查 Gradle 日志或通过 Build → Analyze APK 确认包内容完整性。