Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 向生产发布更新时,如何继续进行后端更新?_Android_Google Play_Updates_Backend_Google Play Console - Fatal编程技术网

Android 向生产发布更新时,如何继续进行后端更新?

Android 向生产发布更新时,如何继续进行后端更新?,android,google-play,updates,backend,google-play-console,Android,Google Play,Updates,Backend,Google Play Console,知道发布Google Play的更新可能需要几个小时甚至一天,那么同步后端的正确方法是什么 --通过同步后端,我指的是更新存储过程、从表中添加/删除列等-- 在APK提交后但更新上线之前同步后端可能会中断当前用户的使用,因为他们的应用程序尚未更新,无法对新的后端更改做出反应 同样,同步后端太晚也会中断使用,因为新应用程序和旧应用程序都无法正确使用后端。这方面的最佳做法是不依赖同时发布。记住,即使Google Play即时更新,用户也不会总是更新。许多大公司所做的是: 假设您正在从后端和客户端的版

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

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

在APK提交后但更新上线之前同步后端可能会中断当前用户的使用,因为他们的应用程序尚未更新,无法对新的后端更改做出反应


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

这方面的最佳做法是不依赖同时发布。记住,即使Google Play即时更新,用户也不会总是更新。许多大公司所做的是:

假设您正在从后端和客户端的版本10移动到版本11:

  • 确保客户端在每个网络调用中都内置了一个可能的响应,即代码“需要新版本”。如果客户端收到此代码作为响应,那么它应该向用户显示一个选项“您需要更新到最新版本”,并链接到Google Play,而不是继续。这也可以通过类似的服务来实现
  • 在后端,确保同时支持新客户端(在本例中为v11)和旧客户端(在本例中为v10)。这需要一些软件工程,但通常并不太难
  • 在您的后端有一个实时配置变量,用于配置您需要的客户端版本。从设置为10(旧客户端)开始
  • 发布您后端的v11。此时,所有客户都在V10客户机上与V11后端对话
  • 完成后端卷展后,将新客户端发布到Play Store。在这一点上,一些用户已经更新并在V10客户机上,一些用户将在V11上
  • 在给用户一段时间更新(可能一周)后,更新您的远程配置以坚持所有用户都使用V11客户端 然后您可以在新的后端上工作,它只需要支持客户端V11和V12

    另一种不太安全但需要较少软件工程的方法是使用Google Play的定时发布。在这个过程中,你会提前将你的应用程序发送到谷歌进行审查,并要求他们在审查完成后的特定时间发布。这意味着谷歌将让你的应用程序在准确的时间上线。然后您可以在那个时候更新您的服务器

    你仍然可以有一个小窗口(分钟),世界各地的播放服务器不同步。此外,Play客户端对应用程序描述进行一些客户端缓存,因此即使Play store已更新,用户也可能在一段时间内(可能几个小时)看不到新版本。这就是为什么我在回答的第一部分推荐这个程序