沙盒文件目录

屏幕快照 2016-11-17 15.33.12.png

默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。因为应用的沙盒机制,应用只能在几个目录下读写文件

Documents:苹果建议将程序中建立的或在程序中浏览到的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目录。保存需要持久化的数据,例如游戏应用可以将游戏存档保存在该目录;

Library:存储程序的默认设置或其它状态信息;

Library/Preferences文件夹:偏好设置,通过NSUserDefaults类存取该目录下的设置信息;可以存储用户是否登陆,是否记住密码,不需要关心文件名;

Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除,保存需要持久化的数据,体积大,非重要的数据。

tmp:存放临时文件的地方。

iTunes在与iPhone同步时,备份所有的Documents和Library文件。
iPhone在重启时,会丢弃所有的tmp文件。

// 获取程序的Home目录
    NSString *homeDirectory = NSHomeDirectory();
// 获取document目录
    NSString *document = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
// 获取Library目录
    NSString *library = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) lastObject];
// 获取Cache目录
    NSString *cache = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
// 获取tmp目录
    NSString *temp = NSTemporaryDirectory();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容