NSURLCache 是不是在 iOS 应用重新安装时被清除?

Posted

技术标签:

【中文标题】NSURLCache 是不是在 iOS 应用重新安装时被清除?【英文标题】:Is NSURLCache cleared on iOS app reinstall?NSURLCache 是否在 iOS 应用重新安装时被清除? 【发布时间】:2016-03-17 11:25:09 【问题描述】:

TL;DR:有谁知道应用程序通过AFNetworking/NSURLConnection 发出的请求是否被存储并持久保存在NSURLCache在重新安装应用程序之间

背景:我正在解决一个影响发货应用的一些用户的奇怪错误,该错误在应用重新安装后仍然存在,并且可能由先前响应的错误缓存副本来解释。

该应用使用位于NSURLConnection 之上的AFNetworking,因此使用NSURLCache

应用内没有明确的NSURLCache 配置。

因此我很想知道响应是否可以在最初发出请求的应用安装的生命周期之后保留在 NSURLCache 中。

【问题讨论】:

【参考方案1】:

通常取决于重新安装应用的方式。理论上,如果您完全删除应用程序,那么不,任何应用程序数据都不可能保留,包括 URL 缓存,唯一的例外是某些钥匙串项目。也就是说,理论与实践的区别......

话虽如此,如果您想确定,您始终可以创建一个新的共享缓存,将其磁盘文件存储在与默认位置不同的位置。如果它是由过时的缓存数据引起的,那应该可以解决问题。

【讨论】:

以上是关于NSURLCache 是不是在 iOS 应用重新安装时被清除?的主要内容,如果未能解决你的问题,请参考以下文章

iOS 中 UIWebview 的 NSURLCache

NSURLCache内存缓存

NSURLCache详解和使用

NSURLCache详解和使用

NSURLConnection 是不是利用了 NSURLCache?

NSURLCACHE