分阶段发布与更新
了解分阶段发布和更新
分阶段发布与更新 是 CoddyKit 上的免费 Android Academy 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Android Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Android Academy 课程共包含 4 节课。
安全发布版本
一次性将新版本推送给所有用户存在风险——一个隐藏的崩溃就可能立即影响整个受众。Google Play 提供了更安全的方式:测试轨道和分阶段发布。
本课将介绍发布轨道、如何先向一小部分用户发布、更新如何送达用户,以及出现问题时如何应对。
发布轨道
Play 会将版本组织到不同的轨道中,接触用户的范围从小到大依次为:
- 内部测试 — 最多 100 名测试人员,几分钟内即可使用,适合团队内部。
- 封闭式测试 — 通过电子邮件列表或群组邀请测试人员。
- 开放式测试 — 任何人都可以加入公开测试版。
- 正式版 — 商店中的所有用户。
推荐的流程是逐级推广构建版本:内部测试 → 封闭式测试 → 开放式测试 → 正式版。
创建发布版本
对于任意轨道,点击创建新版本,上传您的 .aab(或从应用包资源管理器中选择一个),然后添加版本说明。
版本说明使用语言标签,因此每个地区都有自己的文本。请保持简短,并以用户为中心。
<!-- Release notes, one block per language -->
<en-US>
- New dark mode
- Faster startup
- Fixed a crash when opening profiles
</en-US>
<tr-TR>
- Yeni karanlık mod
- Daha hızlı açılış
- Profil açılırken oluşan çökme düzeltildi
</tr-TR>分阶段(按百分比)发布
对于正式版发布,您可以进行分阶段发布:先将版本提供给一小部分用户,例如10%,然后逐步扩大范围。
Play 会随机选择接收更新的用户。您可以监控崩溃率和 ANR 率,然后逐步提高比例:10% → 25% → 50% → 100%。
如果指标表现不佳,您可以不再提高比例,或在大多数用户受到影响前暂停发布。
暂停和恢复发布
如果分阶段发布发现问题,您可以在控制台中暂停发布。暂停后,新的用户不会再收到更新;已经更新的用户仍会保留该版本。
在新版本中发布修复后,您可以恢复发布,或重新开始一次全新的发布。暂停发布可以为您争取时间,而不必全面撤回——对于已经安装的用户,Play 实际上并不提供真正的撤回机制。
这正是您应该从较低比例开始的原因。
更新如何送达用户
默认情况下,Play 商店应用会在后台自动更新应用(通常通过 Wi-Fi)。用户也可以手动点击“更新”。
请记住 versionCode 规则:每个版本都必须使用比上一个版本更大的整数,否则 Play 会拒绝该版本。versionName 只是用户看到的标签。
android {
defaultConfig {
// Must be strictly greater than the previous release
versionCode = 13
// Friendly label shown in the store and settings
versionName = "1.5.0"
}
}应用内更新
有时您会希望在应用内提醒用户更新。应用内更新 API 提供两种模式:
- 灵活更新 — 在后台下载,同时用户可以继续使用应用。
- 立即更新 — 针对关键更新的全屏阻塞式流程。
您可以检查更新是否可用;如果有更新,就启动所选的流程。
val manager = AppUpdateManagerFactory.create(context)
manager.appUpdateInfo.addOnSuccessListener { info ->
val available = info.updateAvailability() ==
UpdateAvailability.UPDATE_AVAILABLE
if (available && info.isUpdateTypeAllowed(AppUpdateType.FLEXIBLE)) {
manager.startUpdateFlowForResult(
info,
AppUpdateType.FLEXIBLE,
activity,
REQUEST_CODE_UPDATE
)
}
}完成灵活更新
灵活更新会在后台静默下载。下载完成后,您必须调用 completeUpdate() 来安装更新——通常会先通过提示条提醒用户。
监听 DOWNLOADED 状态,然后提供重启选项。
manager.registerListener { state ->
if (state.installStatus() == InstallStatus.DOWNLOADED) {
// Tell the user, then finish the install
showRestartSnackbar {
manager.completeUpdate()
}
}
}发布后的监控
发布并不是终点。Play 控制台的Android 运行状况面板会跟踪 Play 用来为您的应用排名的健康指标:
- 崩溃率和ANR 率(应用无响应)。
- 过多的唤醒、渲染缓慢和电池问题。
在分阶段发布期间密切关注这些指标。如果指标突然升高,就应在扩大范围前暂停发布。
应对评价与问题
发布后,有两项持续进行的工作非常重要:
- 在控制台中回复评价——这有助于提高评分,也能发现真实的错误。
- 从运行状况数据或崩溃报告工具中分析崩溃,修复问题,提高
versionCode,然后进行新一轮分阶段发布。
发布是一个循环:小范围发布、测量、修复,再次发布。
安全的发布流程
综合整课内容,一个稳健的流程是:
- 上传到内部测试,与团队一起进行冒烟测试。
- 推广到封闭式/开放式测试,以获得更广泛的反馈。
- 以10% 的分阶段发布开始正式版发布。
- 监控Android 运行状况;如果状态良好,就扩大比例。
- 如果指标突然升高,就暂停并修复问题,然后使用新的构建版本恢复发布。
小步推进和良好的监控可以让发布从令人担忧的事情变成日常工作。
快速检查
您已将正式版发布给 10% 的用户,但崩溃率突然升高。您希望在准备修复版本期间阻止更多用户获取有问题的版本。应该怎么做?
回顾:分阶段发布与更新
现在您已经可以放心地发布版本:
- 使用轨道——内部测试、封闭式测试、开放式测试和正式版——逐步扩大构建版本的用户范围。
- 进行分阶段发布,从小范围开始,并在指标保持健康时逐步扩大。
- 如果运行状况指标突然升高,就暂停发布;修复问题后,使用更高的
versionCode发布新的构建版本。 - 您还可以选择使用应用内更新 API 提醒用户更新(灵活更新或立即更新)。
- 监控Android 运行状况和评价,然后持续改进。
至此,您已经完成了“发布到 Google Play”课程:从签名的发布构建版本,一直到安全且受监控的分阶段发布。
常见问题解答
「分阶段发布与更新」课时是免费的吗?
是的 — 「分阶段发布与更新」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Android Academy 课程的其余内容,请升级到 CoddyKit PRO。 Android Academy 课程共包含 4 节课。
「分阶段发布与更新」这节课中我会学到什么?
了解分阶段发布和更新 你通过在浏览器中直接运行的动手代码来练习 Android Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Android Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Android Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。
「分阶段发布与更新」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Android Academy 课中编写并运行代码吗?
能。每节 Android Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 准备发布构建
- 应用签名
- Play 控制台与应用列表
- 分阶段发布与更新