0

我正在使用 xcode 开发 ipad 应用程序,并且不想缓存一些数据。到处和堆栈溢出都说使用 EGOcache。该网站显示很多人使用这个https://github.com/enormego/EGOCache 但似乎每个人都知道它是如何工作的,而我没有。

但他们没有留下任何例子,也找不到任何例子。

因此,如果您有经验,请告诉我 3 件事。

使用键保存 NSData,使用键获取 NSData,清除缓存

为了保存计时器,我认为这是正确的:

[self.cache setData:data0 forKey:@"MessagesCache" withTimeoutInterval:timer];

对于清除缓存:

[self.cache clearCache];

但是我不知道,所以我无法测试它。

self.cache 是 EGOcache 实现文件的实例化。

@property (strong, nonatomic) EGOCache *cache;

希望得到帮助,谢谢。

4

2 回答 2

3

在 Objective-C 世界中,当没有我认为应该有的那么多文档时,我会直接进入头文件。然后在你的情况下,我会寻找一个名为的方法setData(我什至在我阅读标题回答这个问题之前就假设了这个名字),它是here。然后你会dataForKey:这里使用,最后clearCache这里使用,简而言之,是的,你的假设看起来是正确的。

于 2013-09-16T21:36:56.230 回答
2

您不需要 EGOCache 的属性。而不是你用这个:

[[EGOCache globalCache] setData:data0 forKey:@"MessagesCache"];

要清除它,请执行以下操作:

if ([[EGOCache globalCache] hasCacheForKey:@"MessagesCache"]) {
    [[EGOCache globalCache] removeCacheForKey:@"MessagesCache"];
}

您实际上不必在删除缓存之前查看缓存是否存在,但我更喜欢安全的方法,以防底层 removeCacheForKey 实现发生变化。

我真的也不担心 withTimeoutInterval 参数。我从来没有使用过它,也从来没有需要。希望这可以帮助。

于 2013-10-02T22:45:12.050 回答