OC写法:     swift写法再下下面。

 清除WKWebView的缓存,让H5页面一刷新就更新至最新的页面

 要区分iOS9.0和8.0两种

 - (void)deleteWebCache {

     if ([[UIDevice currentDevice].systemVersion floatValue] >= 9.0) {

         NSSet *websiteDataTypes

         = [NSSet setWithArray:@[

                                 WKWebsiteDataTypeDiskCache,

                                 //WKWebsiteDataTypeOfflineWebApplicationCache,

                                 WKWebsiteDataTypeMemoryCache,

                                 //WKWebsiteDataTypeLocalStorage,

                                 //WKWebsiteDataTypeCookies,

                                 //WKWebsiteDataTypeSessionStorage,

                                 //WKWebsiteDataTypeIndexedDBDatabases,

                                 //WKWebsiteDataTypeWebSQLDatabases

                                 ]];

         //// All kinds of data

         //NSSet *websiteDataTypes = [WKWebsiteDataStore allWebsiteDataTypes];

         //// Date from

         NSDate *dateFrom = [NSDate dateWithTimeIntervalSince1970:];

         //// Execute

         [[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:websiteDataTypes modifiedSince:dateFrom completionHandler:^{

             // Done

         }];

     } else {

         NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:];

         NSString *cookiesFolderPath = [libraryPath stringByAppendingString:@"/Cookies"];

         NSError *errors;

         [[NSFileManager defaultManager] removeItemAtPath:cookiesFolderPath error:&errors];

     }

 }

 swift:

 // MARK: - 清空缓存

     func ClearCache() {

         let dateFrom: NSDate = NSDate.init(timeIntervalSince1970: )

         if #available(iOS 9.0, *) {

             let websiteDataTypes: NSSet = WKWebsiteDataStore.allWebsiteDataTypes()

             WKWebsiteDataStore.defaultDataStore().removeDataOfTypes(websiteDataTypes as! Set<String>, modifiedSince: dateFrom) {

                 print("清空缓存完成")

             }

         } else {

               let libraryPath = NSSearchPathForDirectoriesInDomains(.LibraryDirectory, .UserDomainMask, true)[]

             let cookiesFolderPath = libraryPath.stringByAppendingString("/Cookies")

             let errors: NSError

             try? NSFileManager.defaultManager().removeItemAtPath(cookiesFolderPath)

         }

     }

清除WKWebView的缓存的更多相关文章

  1. 【Android】Android清除本地数据缓存代码

    最近做软件的时候,遇到了缓存的问题,在网上看到了这个文章,感觉不错.分享给大家看看 文章出处:http://www.cnblogs.com/rayray/p/3413673.html /* * 文 件 ...

  2. 清除UIWebView的缓存

    //清除cookies NSHTTPCookie *cookie; NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCook ...

  3. Android清除本地数据缓存代码案例

    Android清除本地数据缓存代码案例 直接上代码: /*  * 文 件 名:  DataCleanManager.java  * 描    述:  主要功能有清除内/外缓存,清除数据库,清除shar ...

  4. Android清除本地数据缓存代码

    /*  * 文 件 名:  DataCleanManager.java  * 描    述:  主要功能有清除内/外缓存,清除数据库,清除sharedPreference,清除files和清除自定义目 ...

  5. Icon cache rebuilding with Delphi(Delphi 清除Windows 图标缓存源代码)

    清除Windows图标缓存的代码: procedure RebuildIconCache; .... const sr_WindowMetrics='Control Panel\Desktop\Win ...

  6. 如何清除本地DNS缓存 windows

    在您的网站迁移服务器时需要对域名所指向的IP进行更改,这时候在本机访问网站时就需要清除本地的DNS缓存信息,那么怎样清除呢? 首先我们应该明白清除DNS缓存信息的原理:当计算机对域名访问时并不是每次访 ...

  7. 设置清除html5页面缓存

    设置清除html5页面缓存 html5端设置 meta 标签: <meta http-equiv="Pragma" content="no-cache" ...

  8. 清除DNS解析缓存

    接下来在弹出的命令提示符窗口中输入“ipconfig /displaydns”,我们会看到系统中有多条我们之前使用过的DNS地址,如下图所示 5 然后,我们接着输入命令“ipconfig /flush ...

  9. clearstatcache清除文件状态缓存

    当使用下列任何函数时stat(),lstat(),file_exists(),is_writable(),is_readable(),is_executable(),is_file(),is_dir( ...

随机推荐

  1. javascript 字符串数组链接

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. Nginx配置文件(nginx.conf)配置详解(2)

    Nginx的配置文件nginx.conf配置详解如下: user nginx nginx ; Nginx用户及组:用户 组.window下不指定 worker_processes 8; 工作进程:数目 ...

  3. ZeroC Ice 暂记

    摘自: http://weibo.com/p/1001603869896789339575 原文地址: http://www.oschina.net/question/865233_242146 吴治 ...

  4. matlab clear

    clear 删除工作空间中的项目,释放系统内存 语法: clear clear name clear name1 name2 name3... clear global name clear -reg ...

  5. QNDataSet打印预览自动关闭问题

    问题:打印预览后,数据集自动关闭 解决: TQNDataSet = class(TFDMemTable) private protected procedure PSReset; override; ...

  6. Java的基本程序设计结构(上)

    在Java中,每一个变量属于一种类型(type).在声明变量时,变量所属的类型位于变量名之前. 例如: double salary; int vacationDays; long earthPopul ...

  7. DNS服务器原理

    19.1 什么是DNS   主机名自动解析为 IP 就很重要!那就是 DNS.   19.1.1 用网络主机名取得IP的历史渊源   单一档案处理上网的年代: /etc/hosts   利用某些特定的 ...

  8. Jquery--弹窗

    <title>弹窗</title> <script src="JS/jquery-1.7.2.js"></script> <s ...

  9. machine learning 笔记 normal equation

    theta=(Xt*X)^-1 Xt*y x is feature matrix y is expectation

  10. curd 里url传输汉字验证错误问题解决方法

    在url汉字转换的部分用base64_encode转化 base64_encode 将字符串以 BASE64 编码. 语法: string base64_encode(string data); 返回 ...