移动 APP 版本发布与更新介绍
一、版本发布
1.1 测试发布
iOS 建议使用 Testflight 或 fir.im 发布。
1.2 发布 Checklist
- APP 图标
- 版本号
- 编译号
- ASO关键字
- 故事板
- 更新日志
- 功能是否全部完成
- Bug 是否全部修复
- 开发截止时间
- UAT开始时间
- UAT过审时间
- 提交市场时间
- 正式上线时间
- 是否需要服务器扩容
- 是否需要 CDN 支持
- 是否需要运维支持
- 所有渠道已准备
- 所有三方平台服务已准备
- 新增接口列表
- 变更接口列表
- 安装包大小
- 增量包大小
- 产品已确认
- 设计已确认
- 测试已确认
- 后端已确认
- 前端已确认
- 移动端已确认
二、版本更新
2.1 更新引导
版本更新分为强制更新和非强制更新两种。强制更新适用于需要修复线上严重 Bug 情况,对用户使用体验影响较大。
当一个新的版本上线的时候,往往需要考虑四种情况。把新用户、老用户和新版本、老版本做交叉匹配。
版本/用户 | 新用户 | 老用户 |
---|---|---|
新版本 | 正常引导 | 告知更新 |
老版本 | 向下兼容 | 保留服务 |
往往新用户、新版本是最容易的,反正都是新的,自然很多东西不用考虑之前的情况。但是老用户在新版本上,就需要考虑很多情况。
一般来说,新增一个功能对于老用户来说也是没问题的,因为老用户也没接触过,所以可以当新用户处理。但修改一个功能时,则需要非常谨慎地去看待老用户的兼容问题。比如某个健身应用需要用户选择自己的身份,学生、白领、老人等等。
如果某个需求是在新版本上删除某个角色时,则需要考虑这些选择了这个身份的老用户该怎么处理,是映射到一个新的角色上,还是让这部分用户再选一次,这就需要有设计和考量。同样,针对新用户在老版本上,一般是需要保留老版本已有功能的正常运行,如果实在不能向下兼容或者因为某个重要新增功能,希望用户尽快到新应用上,那么需要相对强的提醒引导用户升级,直到老版本比例足够低的时候,才可以考虑放弃老版本的服务提供。
2.2 更新方式
每次打开应用时都需要检测服务端是否有新版本,如有更新则提示用户采用增量更新,而不是下载整个安装包覆盖更新。
- Android 点击更新启动后台下载,下载完成后提示安装;
- iOS 点击后进入 App Store(苹果应用商店审核不允许弹出更新提示框,请确保审核完成并发布之后再打开更新提示)。
2.3 更新内容
更新内容通常包括新增(New)、优化(Updated)和修复(Fixed)三种。
- 新增(New):代表新功能;
- 优化(Updated):代表功能优化;
- 修复(Fixed):代表问题修复。
2.4 更新帮助
可以通过故事板和引导层来帮助用户体验更新内容。
- 故事板作用于本地没App重新下载后的第一次打开,本地有App且更新完版本后的第一次打开;
- 引导层是写死在某一个版本号的,当用户本地有App且更新完版本后第一次打开,进入到首页的时候显示。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 宁静至远,博雅多通!