使用WKWebView遇到的一些问题

在iOS9之前,用loadRequest加载本地的html文件的时候会出现如下的警告
Could not create a sandbox extension for /
但是,在iOS9之后,WKWebView提供了如下接口
[WKWebView loadFileURL:allowingReadAccessToURL:]避免了此问题。
iOS9之前可以用如下的方法解决:
** 先将本地的html文件保存到沙盒的temp文件夹,然后从temp文件夹将html文件取出再使用**

    NSString *path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"html"];
    
    if(path){
        if ([[UIDevice currentDevice].systemVersion floatValue] >= 9.0) {
            NSURL *fileURL = [NSURL fileURLWithPath:path];
            [self.webView loadFileURL:fileURL allowingReadAccessToURL:fileURL];
        } else {
            NSString *htmlString = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
            NSString *temPath = NSTemporaryDirectory();
            NSString *filePath = [temPath stringByAppendingPathComponent:@"html.txt"];
            [htmlString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
            NSString *htmlStr = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];
            [[NSFileManager defaultManager] removeItemAtPath:filePath error:nil];
            [self.webView loadHTMLString:htmlStr baseURL:nil];
        }
    }

你可能感兴趣的:(使用WKWebView遇到的一些问题)