Atualizacao
Apps
Manutencao
Qualidade
Release

应用程序更新 - 实践中的最佳实践

理论上,更新应用程序只是将新文件上传到商店。实际上,这是一个紧张的时刻。

应用程序更新 - 实践中的最佳实践

理论上,更新应用程序只是将新文件上传到商店。实际上,这是一个紧张的时刻。 “对于那些已经安装了它的人来说,它会崩溃吗?”,“[数据库2会正确迁移吗?”。

本实用指南涵盖了操作最佳实践,以确保您的更新顺利且隐形(以良好的方式)。

1. 功能切换(受控启动)

切勿在更新中发布新的“硬编码”功能。 使用功能切换(远程开/关开关)。

  • 您上传的更新带有新功能隐藏(关闭)。
  • 当版本对90%的用户稳定时,您打开服务器上的开关。
  • 如果出现问题,请将其关闭。 这将“部署”(存储中的代码)与“发布”(可供用户使用)分离。

2. 分阶段推出

Google Play 和 Apple App Store 都允许逐步推出

  • 第 1 天:发布给 1% 的用户。
  • 第 2 天:监控崩溃情况。如果一切正常,释放到 5%。
  • 第 3 天:20%。
  • 第 7 天:100%。 如果出现灾难性错误,它只会影响你基地的 1%,而不是全部。您可以暂停发布并修复它。

3. 自动回归测试

上传之前,运行您的测试套件。 回归测试检查:“以前有效的方法现在仍然有效吗?” 修复“个人资料”屏幕并意外破坏“登录”屏幕的情况很常见。自动化(Appium、Maestro)在这里至关重要。

4.本地数据迁移(Realm/CoreData)

如果您的更新更改了本地[移动数据库]的结构(例如向任务表添加了一列),则需要编写迁移

  • 该应用程序检测到您使用的是新版本的银行。
  • 运行脚本使旧数据适应新格式。
  • 然后才让用户输入。
  • 危险:如果您忘记迁移,应用程序在向所有老用户打开时将会崩溃。彻底测试这一点(安装旧版本,填充数据并更新到新版本)。

5. 应用程序大小

监控 0 或 1 的大小。 巨大的更新(100MB+)会使用户在使用 4G 时停止下载。 使用 App Bundles (Android) 等技术,仅下载特定用户屏幕所需的资源,从而减少下载大小。

结论

“在实践中”更新是一项降低风险的活动。使用商店提供的工具(分阶段推出)并实施防御架构(功能标志)。最好的更新是在不造成服务中断的情况下改善用户生活的更新。

另请阅读

  • [应用更新-日常生活中的最佳实践4
  • [应用程序更新5
  • [应用程序流失:实践趋势6
  • [应用程序中的用户保留:实践中的安全性7
  • 【应用中的数据分析8
  • 【数据分析应用-真实案例完整指南9