首页 > 解决方案 > 如何删除超过 14 天的 WKWebKit 缓存?

问题描述

我想删除所有超过 14 天的 WKWebKit 数据。

我可以使用这样的代码删除所有缓存的 WKWebKit 数据,但是 Apple 提供的唯一 APImodifiedSince将删除某个日期之后的所有数据。在此示例中,它将在 1970 年之后删除(这将是所有内容)。奇怪的是,这是Apple API中唯一可用的选项。

let allDataTypes = WKWebsiteDataStore.allWebsiteDataTypes()
let dateSince = Date(timeIntervalSince1970: 0)

WKWebsiteDataStore
    .default()
    .removeData(ofTypes: allDataTypes, 
                modifiedSince: dateSince) {
    //no-op
}

我想要的是执行类似操作的代码,但是我找不到支持它的 API:

let allDataTypes = WKWebsiteDataStore.allWebsiteDataTypes()
let fourteenDaysAgo = Date(timeIntervalSinceNow: TimeInterval(-1209600))

WKWebsiteDataStore
    .default()
    .removeData(ofTypes: allDataTypes, 
                modifiedBefore: fourteenDaysAgo) {
    //no-op
}

是否有捷径可寻?

标签: iosswiftobjective-ciphonewebkit

解决方案


推荐阅读