【问题标题】:How To Clear Cache Memory When New ViewController Call In IOS 7?IOS 7中调用新ViewController时如何清除缓存?
【发布时间】:2014-04-01 01:07:02
【问题描述】:

我使用 NSURLConnection 在服务器 NSURLConnection 上发送请求,由于内存不足,增加了缓存和应用程序崩溃。 我使用此代码清除缓存:

[[NSURLCache sharedURLCache] removeAllCachedResponses];

但在 iOS 7 中,此代码不再起作用。有人知道如何清除缓存吗?

【问题讨论】:

  • 你可以通过在xcode中点击edit->refractor->convert to arc来将你的代码转换为arc。然后尝试使用相同的代码。
  • 我在我的项目中使用了 ARC 不支持的第三方库。
  • 将项目转换为 ARC 是我的最后选择
  • 可以从arc中排除第三方库,参考:stackoverflow.com/questions/8040629/…
  • 很遗憾我也用这个,参考stackoverflow.com/questions/6646052/…

标签: ios objective-c caching memory ios7


【解决方案1】:

您可以使用-setDiskCapacity:-setMemoryCapacity: 创建具有特定内存或磁盘使用限制的NSURLCache。您可以清除UIViewController-viewWillDisappear:-viewDidDisappear:中的缓存。

【讨论】:

  • 我在 viewWillDisappear 、 viewDidDisappear 和 viewDidLoad 中使用 [[NSURLCache sharedURLCache] removeAllCachedResponses] 代码,但此代码在 IOS7 中不起作用。如果我们使用 ARC,则在 IOS7 对象中自动释放,但问题是我使用非弧方法。
  • 如果我使用 NSURLCache 而不是 NSURLConnection 那么缓存将停止增加???
猜你喜欢
  • 1970-01-01
  • 2019-09-29
  • 2016-12-25
  • 2015-05-26
  • 2020-02-08
  • 1970-01-01
  • 1970-01-01
  • 2022-10-13
  • 2016-02-20
相关资源
最近更新 更多