gpt4 book ai didi

ios - Swift WKWebView 加载本地文件无法在设备上运行

转载 作者:搜寻专家 更新时间:2023-10-31 08:15:55 24 4
gpt4 key购买 nike

我尝试在 iPad(或任何设备)上运行我的应用程序时遇到了一些问题,它在模拟器上按预期运行,所以它不能在设备上运行很奇怪。我想知道是否有人可以指出我正确的方向。我花了很多时间阅读这里关于相同问题的所有其他帖子,但是建议的解决方案均无效。

我有一个 WKWebView,我正在向其中加载一个本地 html 文件。在模拟器上,文件加载并且一切正常,但在设备上,我在日志中收到一条消息:

无法为“/”创建沙箱扩展

这是我将文件加载到

的代码
override func viewDidLoad() {
super.viewDidLoad()
var path = NSBundle.mainBundle().pathForResource("Login_UK",
ofType: "html")
var url = NSURL(fileURLWithPath: path!)
var request = NSURLRequest(URL: url!)

var theConfiguration = WKWebViewConfiguration()
theConfiguration.userContentController.addScriptMessageHandler(self,
name: "callbackHandler")

webView = WKWebView(frame: self.view.frame,
configuration: theConfiguration)
webView!.loadRequest(request)
self.view.addSubview(webView!)
}

任何帮助将不胜感激

亲切的问候,迪米塔尔

最佳答案

感谢任何试图回答我问题的人。我已经发布了这是 Apple 试图修复的 WebKit 库的错误。但是,我发现了一个很好的解决方法,几乎​​不需要做任何工作。

我打开本地文件并读取其内容,然后将该字符串发送到 webView.loadHTMLString 方法,该方法编译文件中的 hmtl。这样您就可以避免 iOS 无法找到本地文件路径的问题。

这是一个读取文件然后为任何有相同问题的人打开它的示例:

    let path2 = NSBundle.mainBundle().pathForResource("index", ofType: "html")
var text = String(contentsOfFile: path2!, encoding: NSUTF8StringEncoding, error: nil)!

webView!.loadHTMLString(text, baseURL: url)

亲切的问候,迪米塔尔

关于ios - Swift WKWebView 加载本地文件无法在设备上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27803341/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com