从商店下载全新版本后,Expo 中的 OTA 更新是否会在首次打开时启动?

2024-02-12

我使用 React Native 开发了一个应用程序,并通过 Expo 分发了它。我将最终版本发布到 Google Play 和 Apple Store。

一段时间后我发现世博会的出版文档 https://docs.expo.io/versions/v32.0.0/workflow/publishing/ that expo publish根据规定,您可以创建内置于 Expo 中的 OTA(“无线”)更新并自动更新应用程序这个答案 https://stackoverflow.com/a/46232026/1983854:

独立应用程序知道在应用程序的已发布网址中查找更新。

这个我测试过并且效果很好。

然而,现在我发现人们从商店(即 Google Play 或 Apple Store)下载该应用程序显然获得的是该应用程序的初始版本,而不是更新版本。

OTA 更新的具体工作流程是什么?他们是否会在第一次打开 Google Play 和 Apple Store 中的现有版本时“替换”它?或者他们是否需要再次打开它才能获取更新?

到底是什么触发了应用程序的更新?


我们也遇到过类似的问题。我可以看到在您的情况下可能导致此问题的两件事:

  • 报到app.json if updates.fallbackToCacheTimeout已设置。如果已设置,这就是在显示上次下载的版本(这将是初始下载后的初始版本)之前,expo 将尝试下载最新更新的时间。
  • 如果您有大型更新,expo 将尝试下载更新 30 秒,然后再显示应用程序的最新版本。

请在此处查看更多信息:https://docs.expo.io/versions/latest/guides/configuring-ota-updates/ https://docs.expo.io/versions/latest/guides/configuring-ota-updates/

OTA 更新不会替换从应用程序商店下载的版本,它们首先存储在设备的缓存中,然后在下载后在应用程序启动时运行。来源https://docs.expo.io/versions/latest/sdk/updates/ https://docs.expo.io/versions/latest/sdk/updates/

应用程序启动时会自动触发更新下载,然后,根据设置,它将等待(只要updates.fallbackToCacheTimeout允许)在显示应用程序之前,或立即显示它。

您可以通过强制退出应用程序然后重新启动来强制应用程序运行最新更新(如果您正在等待)。

希望这可以帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从商店下载全新版本后,Expo 中的 OTA 更新是否会在首次打开时启动? 的相关文章

随机推荐