iOS Developer程序员iOS技术点

WKWebView填坑之----缓存

2017-04-11  本文已影响192人  优米诺

这个也是实际中遇到的问题,前端修改后发现再加载页面还是之前未修改的页面,第一反应就是缓存的问题,之前用UIWebView记得是没有这种问题的。现在换了WKWebView还是需要我们来处理的。
直接上代码吧!

- (void)clearWebViewCache{
    // 这里的 iOS9Later 包含iOS 9
    if (iOS9Later) {
        NSSet *type = [NSSet setWithArray:@[WKWebsiteDataTypeDiskCache, WKWebsiteDataTypeMemoryCache]];
        NSDate *date = [NSDate date];
        [[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:type modifiedSince:date completionHandler:^{}];
    }else{
        NSString *libPath = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES).firstObject;
        NSString *cookiePath = [libPath stringByAppendingString:@"/Cookies"];
        [[NSFileManager defaultManager] removeItemAtPath:cookiePath error:nil];
    }
}

将此方法放在webView加载URL之前调用即可解决缓存的问题。

上一篇 下一篇

猜你喜欢

热点阅读