Я хочу загрузить локальные ресурсы с помощью webView. Я создал демо с UIWebView и WKWebView, чтобы выполнить некоторые тесты с помощью кода ниже.
let uiWebView = UIWebView(frame: self.view.bounds)
self.view.addSubview(uiWebView)
let wkWebView = WKWebView(frame:CGRect(x: 0, y: 400, width: 500, height: 500))
self.view.addSubview(wkWebView)
let path = Bundle.main.path(forResource:"1", ofType: "png")
guard let realPath = path else {
return
}
let url = URL(string: realPath)
let fileUrl = URL(fileURLWithPath: realPath)
if let realUrl = url {
uiWebView.loadRequest(URLRequest(url:realUrl))
wkWebView.load(URLRequest(url:realUrl))
}
// uiWebView.loadRequest(URLRequest(url:fileUrl))
// wkWebView.load(URLRequest(url:fileUrl))
uiWebView может загружать ресурс, но wkWebView не может. Но если я использую
uiWebView.loadRequest(URLRequest(url:fileUrl))
wkWebView.load(URLRequest(url:fileUrl))
и uiWebView, и wkWebView могут работать хорошо. Я смущен, и кто-нибудь может объяснить это мне: Не следует ли использовать URL (строка: realPath) для локального ресурса? Но почему UIWebView может использовать его?