iphone - 如何让 iOS 应用程序缓存所有请求响应?

标签 iphone ios caching afnetworking

我开始开发一个应用程序,该应用程序将在很多地方包含数据,每次用户要求查看这些数据时,我都会从我的服务器下载这些数据。然后,当用户在没有任何互联网连接的情况下再次打开应用程序时,应用程序应该让他查看之前下载的任何内容,只需从缓存中加载即可。关键是内容会不时更改,如果用户无法连接到服务器,他需要能够看到最后下载的版本。

问题是,我可以将缓存设置为磁盘上的特定大小,但无论大小如何,我都必须存储所有内容。我想我必须设置缓存磁盘大小以在空间不足时使其更大。执行此操作的好方法是什么?

附言不确定这是否相关,但我正在考虑为这个项目尝试 AFNetworking(之前我使用 ASIHTTPRequest)。

最佳答案

如果您使用 NSURLCache 作为磁盘缓存,您可以使用 currentDiskUsage 检查磁盘使用情况。如果这接近 diskCapacity,您可以使用 setDiskCapacity 增加它。您应该在尝试写入缓存之前执行此检查。

关于iphone - 如何让 iOS 应用程序缓存所有请求响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19401241/

相关文章:

iphone - 如何从电子邮件链接打开 PhoneGap 应用程序

iphone - iOS 5 中 Core Data 的奇怪警告

ios - Xcode - 将字体从 iPhone 缩放到 iPad 大小

ios - UITableView - 更改与按下的按钮位于同一行的文本字段

android - 相关的引起错误的小部件是Scaffold

java - Spring可缓存多个节点

javascript - 你能推荐什么 JavaScript 缓存

java - 是否有用于缓存文件的 Java 库?

iphone - 为什么在touchesBegan中传递的是touches(set)而不是touches?

iphone - AppStore 中忽略的 UIPrerenderedIcon 设置