从iOS应用程序

时间:2016-03-04 18:58:07

标签: ios xcode webview uiwebview browser-cache

这是我编辑过的问题:

如何在iOS应用中限制WebView的缓存大小?

我可以使用其中一种代码吗?

[[NSURLCache sharedURLCache] removeAllCachedResponses];
[[NSURLCache sharedURLCache] setDiskCapacity:X];
[[NSURLCache sharedURLCache] setMemoryCapacity:X];

或者是否可以通过单击按钮来清除缓存?

1 个答案:

答案 0 :(得分:0)

清除UIWebview缓存的最简单方法是:

  

<强>目标C

[[NSURLCache sharedURLCache] removeAllCachedResponses];
  

<强>夫特

NSURLCache.sharedURLCache().removeAllCachedResponses()
  

现在,对于您的情况,您可能希望在之后使用此功能   计算正确的日期:

Clears the given cache of any cached responses since the provided date.
     */
    @available(iOS 8.0, *)
    public func removeCachedResponsesSinceDate(date: NSDate)

一个好的方案是:

1.-在NSUserDefaults中存储您清理缓存的最后时间/日期(或首次使用该应用)。

2.-每次您输入应用程序(或background fetch)时,计算自该日期起24小时或更长时间

3.-如果true,则清除缓存并返回步骤1