如何在应用程序重新打开时刷新 iOS 主屏幕 PWA

Tud*_*ina 9 mobile-safari ios progressive-web-apps

我创建了一个由Google Chrome Lighthouse审计工具验证的 PWA 。在 Android 手机上,会显示原生的“添加到主屏幕”提示,而在 iOS 上,会显示自定义的“添加到主屏幕”提示。

问题是在 iOS 上,PWA 保存了会话,而我没有被重定向到“start_url”。

如果用户关闭应用程序并在之后重新打开它,我需要一个选项来始终将用户定向到“start_url”。

以下是 PWA 文件:https : //www.ta-systems.net/BE-Utilities/pwc/test/

我已经尝试过 PWA 文档中提到的,但是,每次重新启动时我都无法让应用程序刷新。

完整代码可以在这里找到:https : //www.ta-systems.net/BE-Utilities/pwc/test/

预期结果应该是应用程序在 5 秒后重定向到不同的 HTML 页面,一旦应用程序关闭并重新启动,“start_url”应该重新打开。

目前发生的情况如下:

  1. 我打开“timesheet.html”文档并提示我将 PWA 添加到主屏幕。
  2. 我将应用程序添加到主屏幕。
  3. 我从主屏幕打开应用程序 & 我被重定向到“redirect.html”。
  4. 我关闭应用程序并重新打开它,但未打开“start_url”(timesheet.html)。
  5. 该应用程序卡在“redirect.html”屏幕上。

Ron*_*ony 6

PWA 发生的情况是,它在您关闭会话后保存了会话状态。从 iOS 12.2 开始,Apple 修复了 PWA,以便能够保持 PWA 会话状态。然而,苹果仍然有一个需要解决的问题:无论你最小化应用程序(通过进入主屏幕)还是关闭它(通过在应用程序切换模式下向上滑动),它都会保存状态。根据这篇文章(https://wespeter.com/posts/ios13-pwa-improvements/),Apple将在 iOS 13 中进行修复,以便在通过向上滑动强制退出后从头开始启动 PWA(start_url),并且只保留最小化到主屏幕时的状态,无需强制退出并重新打开。