什么是沙盒(SandBox)
每一个iOS程序都会为自己创建一个叫做沙盒的文件夹,具有独立、封闭、安全的特性。
注:每一个程序都会拥有规格属于自己的沙盒,沙盒就是一个文件系统目录。
沙盒
1.沙盒是一种安全体系
2.存放所有非代码文件,比如.jpg啊、.avi啊
3.其规定了应用程序只能在为该应用创建的沙盒内访问,不可以访问其他的沙盒内容(iOS8之后部分开放)
沙盒目录
1.沙盒路径
NSLog(@"沙盒路径:%@",NSHomeDirectory());
可在Finder中查找到
2.沙盒文件
1.Documents
程序中建立的或是程序中浏览的文件数据保存在该目录下,itunes会自动备份该目录
查找Documents路径
NSString * doucmentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)lastOject];
NSLog(@"documentsPath = %@",doucmentsPath);
//方法 NSSearchPathForDirectoriesInDomains 是查找沙盒路径
//参数1:NSDocumentDirectory 枚举 具体查看的文件夹
//参数2:NSUserDomainMask 用户主目录
//参数3:YES 表示展示完整路径
2.Library
存储程序默认状态,或是其他状态信息,里边包含两个文件夹caches (缓存文件),preferences(偏好设置文件)
NSString * libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,NSUserDomainMask,YES)lastObject];
NSLog(@"%@",libraryPath);
3.tmp
里边放的是APP获取到的一些临时文件夹
NSString * tmpPath = NSTemporaryDirectory();
NSLog(@"%@",tmpPath);
4.获取xxxx.app文件地址
NSString * APPPath= [[NSBundle mainBundle] resourcePath];
NSLog(@"%@",APPPath);