iphone - 如何在 Objective-C 中缓存 session 的数据

标签 iphone objective-c ios caching optimization

我在我的 iOS 应用程序中使用了一些 REST Web 服务调用,作为响应,我得到了 pdf、ppt、.mp4 等文档列表,并且在选择时我从服务器获取相应的数据并将其呈现在屏幕上。

  • 现在,当用户选择一个特定文件时,比如说一个 .pdf 文档,然后当他回来并选择同一个文件时,我再次进行服务调用。(我想避免这种情况)。
  • 因为每次我想缓存一个文件时,它会花费更多的时间来加载,一旦点击了 DocumentsDirectory 或缓存中的某个地方,那么如果文件在我的缓存中,那么不要再次调用服务调用,只需从缓存中获取它&使成为。

  • 那么实现这一目标的最佳方法是什么,或者我如何优化我的应用程序性能。
    提前感谢任何帮助。谢谢。

    最佳答案

    您对 #2 的想法——将内容保存在缓存中——是一个很好的策略。
    EGOCache 是一个非常好的库,可以让您使用简单的过期策略存储任意数据。 ,首次发布于 Enormego's blog here .

    在您的情况下,您只需使用 RESTful URL 作为键,并在获取和保存之前检查缓存是否存在,如果它不存在。文档有点稀疏,但 header file非常不言自明。祝你好运!

    关于iphone - 如何在 Objective-C 中缓存 session 的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12384287/

    相关文章:

    iphone - 为不同的应用程序版本更改名称,并避免在App Store上发送垃圾邮件

    iphone - UITableview 部分标题不显示文本

    ios - 仅为绘制的特定区域边界获取 UIImage - PaintView

    ios - 从右向左滑动手指,反之亦然 :-)

    ios - 惯性滚动算法与帧无关 - 预测结束位置

    iphone - 如何在 iphone 中停止 NSThread 子线程

    iphone - iOS map 图钉气泡出屏

    objective-c - 为什么 initWithCoder 没有正确初始化项目?

    iphone - 单击 "OK"后首次运行时 GPS 未启动

    android - Flutter-获取IOS的外部存储路径以安全地存储身份验证文件