You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WKWebView本地文件加载方式变更及Swift新版本兼容问题咨询

WKWebView加载本地文件的默认方式变化解析

嘿,关于WKWebView加载本地文件的事儿,我得跟你好好唠唠——这和UIWebView,还有旧版本WKWebView(iOS 10 & macOS 10.12)的玩法完全不一样了!

现在WKWebView加载本地文件的默认操作,已经从Bundle.main.path换成了Bundle.main.url,对应的加载函数也变成loadFileURL作为首选方案。

我当然清楚.path和.url压根不是一回事儿,而且过去这俩方法都能正常跑——以前.path才是大家默认用的路子。但最近Swift的新版本好像把几乎所有带.path相关的用法都搞崩了,这确实挺让人头疼的。

给你举个新旧写法的对比,更直观:

旧写法(现在可能失效)

if let filePath = Bundle.main.path(forResource: "index", ofType: "html") {
    let fileURL = URL(fileURLWithPath: filePath)
    webView.load(URLRequest(url: fileURL))
}

新推荐写法

if let fileURL = Bundle.main.url(forResource: "index", withExtension: "html") {
    webView.loadFileURL(fileURL, allowingReadAccessTo: fileURL.deletingLastPathComponent())
}

内容的提问来源于stack exchange,提问作者JDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:20:25