有没有办法检测系统是否清除了Caches目录?

时间:2015-05-07 11:18:38

标签: ios objective-c caching nsfilemanager

在应用加载时,我将一些数据保存在应用程序沙箱中的Caches目录中。文件名和/或金额可能会有所不同,因此我无法使用这些进行检查。有时系统会清除导致我的应用程序意外操作的Caches目录,包括崩溃。我的问题是:

  • 系统什么时候清除Caches目录?
  • 如何检测到该系统清除了该目录?

谢谢你。

修改

来自Apple的文档:

  

Caches

     

使用此目录编写您的应用可以轻松重新创建的任何特定于应用的支持文件。您的应用程序通常负责管理此目录的内容以及根据需要添加和删除文件。

     

在iOS 2.2及更高版本中,iTunes不会备份此目录的内容。此外,iTunes会在完全恢复设备期间删除此目录中的文件。

     

在iOS 5.0及更高版本中,系统可能会在系统磁盘空间非常少的情况下删除Caches目录。当应用程序运行时,这将永远不会发生。但是,您应该知道iTunes还原不一定是可以擦除Caches目录的唯一条件。

参考:link

当我得到第一个答案时,让我缩小第二个答案:

  • 是否有任何系统文件或标志我可以检查以检测系统是否清除了Caches目录?

1 个答案:

答案 0 :(得分:0)

您不应使用Caches目录来存储关键数据。它可以随时清除。查看文档了解更多信息:https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html