ios ~ 清除webView缓存

WKWebView清除缓存
WKWebView清除缓存只能iOS9使用,低于iOS9运行会崩溃哦!所以,为了适配iOS7和iOS8,还是要做版本判断

if ([[[UIDevice currentDevice]systemVersion]intValue ] >= 9.0) {
 NSArray * types =@[WKWebsiteDataTypeMemoryCache,WKWebsiteDataTypeDiskCache]; // 9.0之后才有的
/*
NSArray *type = @[WKWebsiteDataTypeDiskCache,       // 磁盘缓存
                          WKWebsiteDataTypeMemoryCache,     // 内存缓存
                          WKWebsiteDataTypeOfflineWebApplicationCache, // HTML 离线 Web 应用程序缓存。
                          WKWebsiteDataTypeCookies,         // Cookies
                          WKWebsiteDataTypeSessionStorage,  // HTML 会话存储
                          WKWebsiteDataTypeLocalStorage,    // HTML 本地存储
                          WKWebsiteDataTypeWebSQLDatabases, // WebSQL 数据库
                          WKWebsiteDataTypeIndexedDBDatabases, // IndexedDB 数据库
        ];
*/
 NSSet *websiteDataTypes = [NSSet setWithArray:types];
 NSDate *dateFrom = [NSDate dateWithTimeIntervalSince1970:0];
 [[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:websiteDataTypes modifiedSince:dateFrom completionHandler:^{

 }];
 }else{
 NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,NSUserDomainMask,YES) objectAtIndex:0];
 NSString *cookiesFolderPath = [libraryPath stringByAppendingString:@"/Cookies"];
 NSLog(@"%@", cookiesFolderPath);
 NSError *errors;
 [[NSFileManager defaultManager] removeItemAtPath:cookiesFolderPath error:&errors];

 }

WKWebView是iOS8之后出现的,相较于UIWebView,WKWebView占用的内存更小,还有一些其他的优化。但是如果我们不去主动清理webView产生的缓存,两者都会存在缓存这个问题。比如说一个网页改了一些内容,如果不清理缓存,可能很长一段时间我们都没办法看到新的内容,唯一的办法是卸载重装。

在加载webView的ViewController的viewDidLoad中实现这些代码,可以保证每次加载的webView的内容都是最新的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 我是黑夜里大雨纷飞的人啊 1 “又到一年六月,有人笑有人哭,有人欢乐有人忧愁,有人惊喜有人失落,有的觉得收获满满有...
    陌忘宇阅读 8,606评论 28 53
  • 信任包括信任自己和信任他人 很多时候,很多事情,失败、遗憾、错过,源于不自信,不信任他人 觉得自己做不成,别人做不...
    吴氵晃阅读 6,231评论 4 8
  • 步骤:发微博01-导航栏内容 -> 发微博02-自定义TextView -> 发微博03-完善TextView和...
    dibadalu阅读 3,185评论 1 3
  • 人工智能是什么?什么是人工智能?人工智能是未来发展的必然趋势吗?以后人工智能技术真的能达到电影里机器人的智能水平吗...
    ZLLZ阅读 3,917评论 0 5