向 Google Play 发布新版本的 Android 应用。更新版本号、构建签名应用包、上传并选择发布轨道。教程涵盖所有必备工具的安装——附 Mac、Windows、Linux 下载链接。
如果是第一次操作,请先完成以下安装。已经装好的可以跳过。
Google Play 会拒绝 versionCode 相同的重复上传。打开应用的 build.gradle(或 build.gradle.kts)——通常位于项目的 app/build.gradle——然后更新版本号:
android {
defaultConfig {
versionCode 42 // bump this — must be unique & always increasing
versionName "1.2.1" // user-visible; bump on real changes (e.g. 1.2.0 → 1.2.1)
}
}
两个字段的含义:
versionCode — Google 内部使用的整数,每次上传必须递增,例如 1、2、3……42、43。versionName — 用户在 Play Store 看到的字符串(如"1.2.1")。有实质性更新时递增;小补丁可以不变。Google Play 要求上传 AAB(Android App Bundle),不再接受旧版 APK 格式。了解 AAB ↗。
方式 A — Android Studio 图形界面: Build → Generate Signed Bundle / APK → Android App Bundle → Next → 选择 keystore → Release → Finish。完成后界面会显示输出路径。
方式 B — 终端命令:
./gradlew bundleRelease
输出文件位于 app/build/outputs/bundle/release/app-release.aab。
keytool -genkey -v -keystore release.keystore -alias my-app -keyalg RSA -keysize 2048 -validity 10000(keytool 文档 ↗)。务必将文件和密码妥善保存。一旦丢失 keystore,该应用将永远无法再发布更新。
用注册开发者账号时使用的 Google 账号登录 Google Play Console ↗,然后从列表中选择你的应用。
在左侧边栏的测试和正式版下,共有四个发布轨道:
日常迭代时,点击内部测试即可。
点击创建新版本,将 app-release.aab 拖入上传区域,等待 Play Console 处理(约 30 秒)。
填写版本说明(向测试人员说明本次变更内容),然后依次点击下一步 → 保存 → 发送审核。对于内部测试,这一步几乎是即时生效的。
在内部测试页面,点击测试人员。可选择以下任一方式:
测试人员接受邀请后,便可像下载正常应用一样通过 Play Store 下载测试版。
审核时间因发布轨道而异:
状态变更时 Google 会发送邮件通知。也可在 Play Console 的发布概览中实时跟踪。
内部测试稳定后,无需重新上传,直接晋升到更广的发布轨道:
Play Console → 当前发布轨道 → 晋升版本 → 选择目标轨道(封闭测试 / 开放测试 / 正式版)→ 确认变更 → 提交。每次晋升都会经过目标轨道的审核流程。
正式版发布时,不要一开始就向所有用户推送。建议使用分阶段推出:
如需在 CI 流水线(GitHub Actions 等)中自动上传,推荐使用 fastlane ↗。安装方式:
brew install fastlane # macOS
# or: sudo gem install fastlane (Linux/Windows)
在 Play Console 中生成服务账号 JSON 文件(设置 → API 访问权限 → 创建新服务账号),为该服务账号授予应用的版本管理员权限,然后运行:
fastlane supply --aab app-release.aab \
--track internal \
--json_key path/to/service-account.json