Service Worker 的 WKWebView 模拟

WKWebView analog of service worker

我正在尝试使用 PWA 方法实现部分应用程序,它在 Android 上运行良好,但不适用于 iOS。我们需要

如前所述,here service workers 在 WKWebView(或 UIWebView)中不受支持。那么是否有类似智能缓存控制的模拟或替代解决方案?

似乎可以从应用程序中存储一些网络内容,并能够在发生变化时对其进行更新。是否已经有一个用于该目的的 framework/library/approach

编辑 Service Workers unavailable in WKWebView in iOS 11.3 - 这个问题解释了ServiceWorkers在WKWebView中的状态,但没有给出替代方案。我想讨论任何替代解决方案。

我发现的一件事是 https://github.com/xtools-at/iOS-PWA-Wrapper. It looks like working based on AppCache, but https://developer.mozilla.org/en-US/docs/Web/HTML/Using_the_application_cache#Browser_compatibility 说它已被弃用并建议改用 SW(这不是 PWA 的选项)。

因此,在 WKWebView 让服务人员工作之前,您可以使用 AppCache(尚未完全弃用)。 您可以使用 this and take a look at source page at https://leasingrechnen.at 他们做什么?如果浏览器中没有 service worker,它们会加载指向实现了 manifest.appcache 文件的页面的 iframe,因此页面会被缓存。