在发布生产更新时,如何进行后端更新?

时间:2018-07-12 19:09:09

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

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

-通过同步后端,我的意思是更新存储过程,在表中添加/删除列,等等。 -

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

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

1 个答案:

答案 0 :(得分:2)

此领域的最佳做法是不依赖于同时发布。请记住,即使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商店已更新,用户也可能会在一段时间(可能数小时)内看不到新版本。这就是为什么我在答案的第一部分中推荐该过程的原因。