首页 > 解决方案 > 如果之前已加载某些网页,WKWebView 不会加载 .archive 文件

问题描述

我遇到了一些奇怪的行为WKWebView

loadFileURL(_ URL: URL, allowingReadAccessTo readAccessURL: URL)如果我在初始化 webView 后立即使用加载 .webarchive 文件,它运行良好,但是当我使用加载一些 Web 内容load(_ request: URLRequest)然后尝试使用前面提到的方法加载文件时,我在webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error)委托方法中出现错误:

[ProcessSwapping] 0x10af34160 - ProvisionalPageProxy::didFailProvisionalLoadForFrame: pageID = 1, frameID = 1, navigationID = 4

WKWebView我通过重新创建实例暂时解决了它,以防file在当前 webView url 方案不是时使用方案加载 URL file。在我看来,这是不可接受的。

在研究过程中,我猜测这种行为是关于对某些资源的许可。甚至loadFileURL方法有readAccessURL参数它可能没有更新。

标签: iosswiftwebkitwkwebview

解决方案


我不确定我是否正确理解了您的问题。

您的“webView(_:decidePolicyFor:decisionHandler:)”函数似乎将其视为 http/https URL。因此,您应该在函数中将其指定为类似于 http/https URL。


推荐阅读