android - 当发布更新到生产时如何进行后端更新?

标签 android google-play updates backend google-play-console

知道向 Google Play 发布更新可能需要几个小时甚至一天的时间,那么同步后端的正确方法是什么?

-- 同步后端是指更新存储过程、从表中添加/删除列等。 --

在 APK 提交后但更新上线之前同步后端可能会中断当前用户的使用,因为他们的应用尚未更新以响应新的后端更改。

同样,太晚同步后端也会中断使用,因为新应用和旧应用都无法正确使用后端。

最佳答案

该领域的最佳实践是不要依赖同时发布。请记住,即使 Google Play 会立即更新,用户也不会总是如此。许多大公司所做的是:

假设您要将后端和客户端从版本 10 迁移到版本 11:

  1. 确保客户端已在每个网络调用中内置了一个可能的响应,即代码“需要新版本”。如果客户端收到此代码作为响应,则不应继续,而是应向用户显示一个选项“您需要更新到最新版本”并链接到 Google Play。这也可以通过像 Firebase Remote Config 这样的服务来完成。 .
  2. 在后端,确保您支持新客户端(在本例中为 v11)和旧客户端(在本例中为 v10)。这需要一些软件工程,但通常并不太困难。
  3. 在您的后端有一个实时配置变量,用于配置您需要的客户端版本。开始时将此设置为 10(旧客户端)。
  4. 发布后端 v11。此时,所有客户都在 V10 客户端上与 V11 后端通信。
  5. 后端部署完成后,将新客户端发布到 Play 商店。此时,一些用户将已更新并使用 V10 客户端,而另一些用户将使用 V11。
  6. 给用户一点时间来更新(也许一周)后更新您的远程配置以坚持所有用户都使用 V11 客户端。

然后您可以处理新的后端,它只需要支持客户端 V11 和 V12。

另一种安全性较低但需要较少软件工程的替代方案是使用 Google Play 的定时发布。 Instructions are on this page 。在此过程中,您将您的应用程序发送给 Google 进行提前审核,并要求他们在审核完成后的特定时间发布。这意味着 Google 将在精确的时间让您的应用程序上线。然后您可以在那时更新您的服务器。

您仍然可能会遇到一个小窗口(分钟),其中世界不同地区的 Play 服务器不同步。此外,Play 客户端会对应用程序描述进行一些客户端缓存,因此即使 Play 商店已更新,用户也可能在一段时间内(可能是几个小时)看不到新版本。这就是为什么我在答案的第一部分中推荐该过程的原因。

关于android - 当发布更新到生产时如何进行后端更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51312846/

相关文章:

android - 当我使用自定义 SimpleCursorAdapter 在 ListView 的一行中检查 RadioButton 时,另一行也被检查

android - 移除 Android 应用标题栏

android - 使用 EditText 显示密码

android - 如何开始我的应用程序的市场搜索

获取 Facebook 状态的 PHP 函数?

android - 已完成 Android 应用程序更新 - 但没有原始私钥

java - 将 map 复制到 Elasticsearch 更新文档请求中

Android:如何在Object中封装layout.xml

Android开发者控制台: Delete App

android - MANAGE_EXTERNAL_STORAGE 权限