过去,我使用了一些不同的策略,以便在浏览基于REST的iOS应用的各种屏幕时提供最佳用户体验:
是否有人采用不同的方法,或者有一个轻量级的库,建议提供高级缓存功能,而不需要核心数据?
答案 0 :(得分:0)
利用NSURLCache:您基本上希望将内存缓存合并到框架中。是的,它存在,并被称为AFNetworking。 Here是指定相同的文档。它从您的代码中抽象出缓存机制。
您必须设计一个数据控制器,检查磁盘(核心数据)上是否有数据,如果没有,则使用AFNetworking(还包括内存缓存)发出网络请求。
没有框架可以使用NSURLcache使用核心数据和内存缓存为您提供磁盘缓存
答案 1 :(得分:0)
我的问题的一个可能答案是利用NSCoding / NSKeyedArchiver。
可在此处http://nshipster.com/nscoding/
找到对此的详细说明通过NSKeyedArchiver,我可以持久保存数据,而无需使用Core Data设置整个数据模型。 问题是如何围绕NSKeyedArchiver构建一个有效的缓存机制,以及第三方库是否已经在这样做。看起来答案叫做TMCache https://github.com/tumblr/TMCache
所以我的目的是让我的类符合NSCoding,通过TMCache保留一些对象。我计划首先将我的API调用路由到缓存,同时在后台更新缓存。