应⽤用程序包:(上图中的Layer)包含了所有的资源⽂文件和可执⾏行⽂文件 Documents:保存应⽤用运⾏行时⽣生成的需要持久化的数据,iTunes同步设备时
会备份该⺫⽬目录。例如,游戏应⽤用可将游戏存档保存在该⺫⽬目录
tmp:保存应⽤用运⾏行时所需的临时数据,使⽤用完毕后再将相应的⽂文件从该⺫⽬目录 删除。应⽤用没有运⾏行时,系统也可能会清除该⺫⽬目录下的⽂文件。iTunes同步设备 时不会备份该⺫⽬目录
Library/Caches:保存应⽤用运⾏行时⽣生成的需要持久化的数据,iTunes同步 设备时不会备份该⺫⽬目录。⼀一般存储体积⼤大、不需要备份的⾮非重要数据
Library/Preference:保存应⽤用的所有偏好设置,iOS的Settings(设置) 应⽤用会在该⺫⽬目录中查找应⽤用的设置信息。iTunes同步设备时会备份该⺫⽬目录
沙盒根⺫⽬目录:NSString *home = NSHomeDirectory(); ● Documents:(2种⽅方式)
● 利⽤用沙盒根⺫⽬目录拼接”Documents”字符串
NSString *home = NSHomeDirectory();
NSString *documents = [home stringByAppendingPathComponent:@"Documents"]; // 不建议采⽤用,因为新版本的操作系统可能会修改⺫⽬目录名
● 利⽤用NSSearchPathForDirectoriesInDomains函数
// NSUserDomainMask 代表从⽤用户⽂文件夹下找
// YES 代表展开路径中的波浪字符“~”
NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, NO);
// 在iOS中,只有⼀一个⺫⽬目录跟传⼊入的参数匹配,所以这个集合⾥里⾯面只有⼀一个元素 NSString *documents = [array objectAtIndex:0];
tmp:NSString *tmp = NSTemporaryDirectory();
Library/Caches:(跟Documents类似的2种⽅方法)
利⽤用沙盒根⺫⽬目录拼接”Caches”字符串
利⽤用NSSearchPathForDirectoriesInDomains函数(将函数的第2个参数 改为:NSCachesDirectory即可)
Library/Preference:通过NSUserDefaults类存取该⺫⽬目录下的设置信息
● 属性列表是⼀一种XML格式的⽂文件,拓展名为plist
● 如果对象是NSString、NSDictionary、NSArray、NSData、 NSNumber等类型,就可以使⽤用writeToFile:atomically:⽅方 法直接将对象写到属性列表⽂文件中
属性列表-恢复NSDictionary
● 将⼀一个NSDictionary对象归档到⼀一个plist属性列表中
// 将数据封装成字典
NSMutableDictionary *dict = [NSMutableDictionary dictionary]; [dict setObject:@"⺟母鸡" forKey:@"name"];
[dict setObject:@"15013141314" forKey:@"phone"]; [dict setObject:@"27" forKey:@"age"];
// 将字典持久化到Documents/stu.plist⽂文件中
[dict writeToFile:path atomically:YES];
● 读取属性列表,恢复NSDictionary对象
// 读取Documents/stu.plist的内容,实例化NSDictionary
NSDictionary *dict = [NSDictionary
dictionaryWithContentsOfFile:path];
NSLog(@"name:%@", [dict objectForKey:@"name"]); NSLog(@"phone:%@", [dict objectForKey:@"phone"]); NSLog(@"age:%@", [dict objectForKey:@"age"]);
偏好设置
● 很多iOS应⽤用都⽀支持偏好设置,⽐比如保存⽤用户名、密码、字体⼤大⼩小等设 置,iOS提供了⼀一套标准的解决⽅方案来为应⽤用加⼊入偏好设置功能
● 每个应⽤用都有个NSUserDefaults实例,通过它来存取偏好设置
● ⽐比如,保存⽤用户名、字体⼤大⼩小、是否⾃自动登录
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:@"itcast" forKey:@"username"];
[defaults setFloat:18.0f forKey:@"text_size"];
[defaults setBool:YES forKey:@"auto_login"];
● 读取上次保存的设置
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSString *username = [defaults stringForKey:@"username"];
float textSize = [defaults floatForKey:@"text_size"];
BOOL autoLogin = [defaults boolForKey:@"auto_login"];
● 注意:UserDefaults设置数据时,不是⽴立即写⼊入,⽽而是根据时间戳定时地把缓 存中的数据写⼊入本地磁盘。所以调⽤用了set⽅方法之后数据有可能还没有写⼊入磁盘应 ⽤用程序就终⽌止了。出现以上问题,可以通过调⽤用synchornize⽅方法强制写⼊入
[defaults synchornize];
相关推荐
ios 沙盒如何操作,以及如何应用沙盒来存储文件,查询文件
一个简单的demo来获取沙盒的各个文件夹路径、写入简单的文件、读取简单的文件。
一行代码查看ios磁盘沙盒文件。debug好助手
DCSS安全沙盒系统介绍 安全沙盒系统理念 安全沙盒系统体系介绍 安全沙盒系统特性 安全沙盒系统产品功能 安全沙盒系统硬件外观 安全沙盒系统课件介绍 安全沙盒系统部署
简单易用的沙盒管理文件
JXFileBrowserController:iOS 沙盒文件浏览与分享调试控制器
技术处于国际领先的深信达公司研发的SDC(Secret Data Cage)机密数据保密系统,采用世界上最先进的第三代透明加密技术---内核级纵深立体沙盒加密技术,是专门为解决源代码,图纸,文档等机密数据泄密问题而设计的...
PaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdfPaaS沙盒机制原理分析.pdf
沙盒目录简介 Documents 目录:您应该将所有的应用程序数据文件写入到这个目录下。这个目录用于存储用户数据。该路径可通过配置实现iTunes共享文件。可被iTunes备份。 Library 目录:这个目录下有两个子目录: ...
基于沙盒的Android恶意软件动态分析方案.pdf
文件系统客户端文件系统 API 模拟 Web 应用程序可以在其中导航的本地文件系统。 您可以开发在虚拟沙盒文件系统中读取、写入和创建文件和/或目录的应用程序。
平时真机开发调试App的时候想查看沙盒具体内容一般做法是连接Xcode下载整个App的沙盒,不方便,于是自己写了一个沙盒查看器,支持文件、文件夹的分享功能。 详细介绍:https://www.jianshu.com/p/e45939b6bf3d
The iOS sandbox file browser, which has view, copy, move, delete files and other operations. iOS端沙盒文件浏览器,可以查看、拷贝、移动、删除等操作.zip
swift 工程中文件拷贝到沙盒中,oc可以拷贝成功,swift就不可以。如有人知道如何修改,给我留言
iOS沙盒详解 详细讲解沙盒里的文件路径、读取以及数据的保存
SDC沙盒机密数据保密系统技术白皮书 软件研发行业源代码加密防泄密解决方案
打开文件
沙盒操作数组
判题沙盒,用于OJ的中间服务,介于OJ系统和沙盒系统之间的服务,用于管理运行代码的沙盒以及基本代码的运行和测试
SandBoxie.(32-bit).Patch-LnDL 沙盒注册机