Tips: 以下方法僅針對(duì)iOS9.0以上版本可用辩块,iOS1-iOS9.0之間版本可查詢其他方法欣舵,由于版本老舊葱轩,在這里暫不提供支持
func clearWebCache() {
// MARK: - 清空緩存
let dateFrom: NSDate = NSDate.init(timeIntervalSince1970: 0)
if #available(iOS 9.0, *) {
let websiteDataTypes = WKWebsiteDataStore.allWebsiteDataTypes()
WKWebsiteDataStore.default().removeData(ofTypes: websiteDataTypes , modifiedSince: dateFrom as Date) {
print("清空緩存完成")
NK_ProgressHud.showJustText(msg: "清空緩存完成")
}
} else {
let libraryPath = NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true)[0]
let cookiesFolderPath = libraryPath.appending("/Cookies")
try? FileManager.default.removeItem(atPath: cookiesFolderPath)
}
}
func customDeleteWebCache() {
/*
// 在磁盤(pán)緩存上屠阻。
WKWebsiteDataTypeDiskCache,
// html離線Web應(yīng)用程序緩存于颖。
WKWebsiteDataTypeOfflineWebApplicationCache,
// 內(nèi)存緩存呆贿。
WKWebsiteDataTypeMemoryCache,
// 本地存儲(chǔ)。
WKWebsiteDataTypeLocalStorage,
// Cookies
WKWebsiteDataTypeCookies,
// 會(huì)話存儲(chǔ)
WKWebsiteDataTypeSessionStorage,
// IndexedDB數(shù)據(jù)庫(kù)森渐。
WKWebsiteDataTypeIndexedDBDatabases,
// 查詢數(shù)據(jù)庫(kù)做入。
WKWebsiteDataTypeWebSQLDatabases
*/
let types = [WKWebsiteDataTypeCookies, WKWebsiteDataTypeLocalStorage, WKWebsiteDataTypeDiskCache, WKWebsiteDataTypeMemoryCache, WKWebsiteDataTypeOfflineWebApplicationCache];
let dateFrom: NSDate = NSDate.init(timeIntervalSince1970: 0)
let set = Set.init(types)
WKWebsiteDataStore.default().removeData(ofTypes: set, modifiedSince: dateFrom as Date) {
print("清空緩存完成")
}
}