关于iOS缓存策略的疑问

既然iOS中NSURLSessionConfiguration已经提供了缓存策略,为什么我们下载图片或者其他数据的时候还需要自己实现相关的缓存策略?
1:iOS应用中自己定义缓存策略是必须的?
2:如果是必须的那么系统提供的缓存有什么缺点,或者不适合使用的情况一定要用自己实现的来替代?
3:既然系统提供了相关的缓存策略,一定有适用的场所,那么那些场所适合?

阅读 2.8k
2 个回答

题主指的是网络缓存策略.

  1. iOS自带的网络缓存不是必须的,我们可以进行设置也可以不进行设置

  2. 设置缓存策略后,需要配合NSURLCache进行使用

  3. 当系统自带的缓存策略不符合项目要求时,可以自定义缓存方式(利用e-tag,last-modified等进行判断)

系统缓存的图片会存在tmp文件中 随时可能被删除,不受控制(在cell的循环引用中可能会出现问题).
而我们自己写的缓存一般会存在Library中.不会因为所占空间变大,就被删除.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题