iPad何时清除图书馆/缓存?

9
作为回应苹果公司在iOS数据存储指南上的更改,我最近重新配置了一个iPad应用程序,将其文档(50MB+)存储在库/缓存文件夹中。
在iOS模拟器中进行测试时,当我模拟更新(遵循Brad Larsson的suggestion)时,我没有看到任何与此缓存相关的问题。我还尝试删除库/缓存文件夹的所有内容,以确保我的应用程序能够恢复。
然而,当我发布应用程序升级后,我发现我的用户抱怨存在问题,这些问题可以追溯到iPad部分删除了此缓存。似乎子文件夹结构至少部分保留,但是子文件夹内容被删除。
我已重新设计了应用程序以处理此情况,在升级期间,但我担心当iPad决定清除库/缓存时会发生什么。
有人有经验或深入了解iPad何时尝试删除此缓存吗?
谢谢
2个回答

8
这个问题并没有100%清晰的答案,因为苹果iOS数据存储指南非常模糊...他们没有解释在哪些情况下iOS 5会删除缓存目录中的数据...
大多数情况下,当iOS的磁盘空间不足时,它会开始删除文件,但有时我的应用程序会无缘无故地丢失数据。因此,我必须实现某种恢复模式来重新下载/-生成应用程序需要的文件。
这篇文章很有意思:http://iphoneincubator.com/blog/data-management/local-file-storage-in-ios-5

谢谢,特别是链接。我非常怀疑库/缓存应该在更新之间保持不变的说法。对我来说似乎并不是这样工作的。 - Phil John
没问题。是的 - 这很混乱...也许很快就会解决 :) - dom
2
好问题,也有一个好的回答,我一直面临着完全相同的问题。不知何故,系统会选择性地从缓存中删除文件。它并不会删除所有文件,但我不知道它是如何实现的,似乎它会智能地删除最不可能使用的文件。我现在考虑将文件从/caches目录移动到/documents目录中进行存储。 - Raj Pawan Gumdal

3

文档指出:

在iOS 5.0及更高版本中,当系统磁盘空间非常低时,系统可能会偶尔删除缓存目录。这永远不会发生在应用程序运行时。但是,您应该知道,iTunes还原并不一定是Caches目录被清除的唯一条件。

关于它永远不会在应用程序运行时发生的部分对我们的应用程序至关重要,并且是我们不会遇到意外行为的良好保险。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接