iphone - 如果我不关心它的持久性,我应该在哪里存储图像文件?

时间:2011-08-15 16:03:47

标签: iphone caching temporary-directory

我通常知道我有两种选择:临时文件夹或缓存文件夹。

但有人能告诉我确切的差异吗?

我的应用会根据用户的要求下载大量图片。当然,没有人永久需要它们在iphone的磁盘上。但是我仍然需要将它们缓存在用户将在相对较短的时间内返回查看它们的情况下。

临时文件夹可以放在一个地方,据我所知它会被系统清除。但什么时候会被清除?

对于缓存文件夹,还会定期清除缓存文件夹吗?如果不清除缓存文件夹,并将图像写入缓存文件夹,则会在较长时间内占用太多空间,当然对用户不利。

那么,有人可以给我一些提示并告诉我这两个文件夹之间的确切区别吗?

由于

1 个答案:

答案 0 :(得分:1)

我会使用Caches文件夹 - 查看NSPathUtilities.h中的相关方法来获取该文件。 Caches文件夹不会被备份,但也不一定要清空,临时文件夹也不会。 /tmp通常会在重启时清除(好吧,可能),但在iPhone上通常不会发生这种情况。

最好的方法是使用基于日期的方案将数据放入Caches文件夹,这样当您认为有用时,您可以自己清除其内容。您可以使用文件的创建或修改日期来通知此决策,并且只需在每次启动(或每个进入前景事件)时进行扫描,以确定哪些项目已足够大以至于应将其删除。