1.沙盒的基本概念:
每个ios应用都有自己的专属的应用沙盒。应用沙盒就是文件系统中的目录,但是iOS系统会将每个应用的沙盒目录与文件系统的其他部分隔离。应用必须“待”在自己的沙盒里,并只能访问自己的沙盒。
2.Xcode 6.0的沙盒路径地址如下:
/Users/username/Library/Developer/CoreSimulator/Devices/[Device _ID]/data/Containers/Data/Application/[Application_ID]/
-其中[Device_ID]指应用运行时的设备ID,可以在xcode->window->Devices 如下图
3.查找自己app的沙盒路径
可以使用以下语句查找沙盒路径
//注意第一个参数是NSDocumentDirectory而不是NSDocumentationDirectory
NSArray *documentDirectories =
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//从documentDirectories数组获取第一个,也是唯一文档目录路径
NSString *documentDirectory = [documentDirectories firstObject];
NSLog(@"%@",documentDirectories);
4.用保存文件的路径每次运行都会变化
使用下面语句进行保存数据
[NSKeyedArchiver archiveRootObject:self.privateItems toFile:path];
但是当运行后会发现原来沙盒路径的documents/中的文件会丢失,每次运行都不同。