iOS沙盒路径的简单介绍

  • Documents

    • 保存由应用程序产生的文件或者数据,例如:涂鸦程序生成的图片,游戏关卡记录

    • iCloud 会自动备份

    • Document 中的所有文件

注意: 如果保存了从网络下载的文件,在上架审批的时候,会被拒!

//Documents路径
NSString *dir = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES).lastObject;
  • Tmp

    • 临时文件夹,保存临时文件

    • 保存在 tmp文件夹中的文件,系统会自动回收,譬如磁盘空间紧张或者重新启动手机

    • 程序员不需要管 tmp文件夹中的释放

//临时文件夹
NSTemporaryDirectory()
  • Caches

    • 缓存,保存从网络下载的文件,后续仍然需要继续使用,例如:网络下载的离线数据,图片,视频...

    • 缓存目录中的文件系统不会自动删除,可以做离线访问!

    • 要求程序必需提供一个完善的清除缓存目录的"解决方案"!

//Caches路径
NSString *dir = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES).lastObject;
  • Preferences

    • 系统偏好,用户偏好

    • 操作是通过 [NSUserDefaults standardDefaults] 来直接操作

  • 扩展一下

//使用这个方法
NSString *dir = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES).lastObject;
//使用这个方法可以拼接出我们需要的存储路径
NSString *saveDir = [dir stringByAppendingPathComponent:文件名.lastPathComponent];
posted @ 2017-01-17 11:11  DovYoung  阅读(113)  评论(0编辑  收藏  举报