前言:自己的一个项目,WKWebView加载本地html文件。突然间在boss的iPhone 6 8.4.2 上加载不出来,纳尼?最后,搜查了很多资料,最终解决问题。解决方法如下:
- 将html 文件夹写入缓存
NSString *basePath = [[NSBundle mainBundle] bundlePath];
NSString *htmlPath = [basePath stringByAppendingPathComponent:@"BossECharts"];
if(![[NSFileManager defaultManager] fileExistsAtPath:[@"BossECharts" cacheDic]])
{
[[NSFileManager defaultManager] copyItemAtPath:htmlPath toPath:[@"BossECharts" cacheDic] error:nil];
}
- 获取缓存路径,加载html
NSString *htmlPath = [@"BossECharts/可滑动柱状.html" cacheDic];
NSURL *path = [NSURL fileURLWithPath:htmlPath];
[_webView loadRequest:[NSURLRequest requestWithURL:path]];
- cacheDic 是NSString 分类中的一个方法
/**
获取缓存路径
@return 将当前字符串拼接到cache目录后面
*/
- (NSString *)cacheDic
{
NSString *path = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0];
return [path stringByAppendingPathComponent:self];
}
这样,本地的html在8.0系统中就能正常加载。