沙盒路径

在平时的开发中,我们经常和沙盒打交道,可能平时并不会过多关注沙盒路径下一些文件夹的区别和作用,今天我自己做了一个总结。
1.进入沙盒路径我们会看到Documents,Library,tmp三个文件夹,我们会看到如下图:

沙盒路径_第1张图片
img

Library文件夹下有Caches和Prefereneces两个文件夹:如下图:
沙盒路径_第2张图片
img

1.1 Documents 存放用户文档和应用数据文件,打个比方:如果你做个记事本的app,那么用户写了东西,总要把东西存起来。那么这个文件则是用户自行生成的,就放在Documents文件夹里面。而且会被iTunes同步。

1.2 Library 应用程序规范的顶级目录,下面有一些规范定义的的子目录,当然也可以自定义子目录,用于存放应用的文件,但是不宜存放用户数据文件;如果你有一个app,需要和服务器配合,经常从服务器下载东西,展示给用户看。那么这些下载下来的东西就放在Cache路径下,Prefereneces一般很少会用到。Cache不会被iTunes同步,Prefereneces会被iTunes同步。

1.3 tmp 沙盒临时目录,app退出,或程序切后台后会被删除

2.下面是获取各个文件夹路径的方法:

2.1 获取Documents文件夹路径:

  • (NSString *)libraryPath
    {
    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);

return [paths objectAtIndex:0];
}

2.2 获取Cache文件夹路径:

  • (NSString *)cachePath
    {
    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
    return [paths objectAtIndex:0];
    }

2.3 获取tmp文件夹路径:

  • (NSString *)tmpPath
    {
    return NSTemporaryDirectory();
    }

你可能感兴趣的:(沙盒路径)