应⽤用程序包:(上图中的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严格控制应用对文件系统的访问,只有在自己的沙盒内才能读写文件。 - 需要在Info.plist中声明所需的权限,如使用`NSFileProtection`键来设定文件的保护级别。 6. **沙盒与 iCloud 同步** - 如果需要在...
iOS 应用程序只能在自己的沙盒目录中读取文件,不能访问其他应用程序的文件目录。 沙盒机制的特点: 1.每个应用程序都有自己的存储空间,沙盒目录下面有三个文件夹:Documents、Library 和 tmp。 2.应用程序不能翻...
一、沙盒文件系统概述 1. 沙盒结构:每个iOS应用的沙盒由多个目录组成,包括Documents、Library、tmp和Cache等。这些目录各有不同的用途,例如Documents存储用户数据,Library/Preferences用于偏好设置,tmp存放临时...
开发者可以深入研究其内部实现,了解如何与文件系统交互,以及如何构建一个自定义的文件浏览器。 ### 8. 兼容性与版本 确保`JXFileBrowserController`与你的Swift版本和iOS目标版本兼容,通常它会持续更新以支持...
DCSS安全沙盒系统旨在实现这一目标,通过模拟真实的系统环境,允许恶意软件或可疑行为在其中运行,同时进行深度分析和行为监控。 2. 安全沙盒系统体系介绍: DCSS系统由多个组件构成,包括数据收集模块、分析引擎...
一行代码查看ios磁盘沙盒文件。debug好助手
在iOS应用开发中,每个应用程序都有自己的沙盒环境,这是一个隔离的文件系统空间,用来存储应用程序的数据、资源文件和缓存等。为了保护用户数据安全和隐私,应用只能访问其自身的沙盒目录。 在Swift中,复制文件到...
标题中的“判题沙盒”是指在线判题系统(Online Judge,简称OJ)中的一种核心技术,它在OJ系统和沙盒系统之间起到桥梁作用。判题沙盒的主要任务是管理和控制执行用户提交的代码,确保它们在安全的环境中运行,并对...
The iOS sandbox file browser, which has view, copy, move, delete files and other operations. iOS端沙盒文件浏览器,可以查看、拷贝、移动、删除等操作.zip
技术处于国际领先的深信达公司研发的SDC(Secret Data Cage)机密数据保密系统,采用世界上最先进的第三代透明加密技术---内核级纵深立体沙盒加密技术,是专门为解决源代码,图纸,文档等机密数据泄密问题而设计的...
通过实际的代码示例和案例分析,你将掌握如何在沙盒环境中创建、读取、更新和删除文件,以及如何优雅地处理文件的生命周期,确保应用的合规性和用户体验。 总之,Swift编程-iOS应用-沙盒模型的学习不仅关乎技术实践...
【基于沙盒的Android恶意软件动态分析方案】 随着智能手机的广泛应用,Android平台因其庞大的市场份额和开源特性,成为了恶意软件的主要目标。传统的基于签名的反病毒软件对于未知恶意软件的检测能力有限,因为它们...
同时,沙盒也可以用于检测和分析恶意软件,因为可以在安全的环境中执行可疑代码,而不必担心其在真实系统中的潜在危害。 在压缩包文件"sandbox"中,可能包含了实现沙盒环境的源代码、配置文件或者示例应用程序。...
File_safe.dll可能是一个动态链接库文件,它包含了分析工具所需的一些功能模块,例如文件系统监控、网络通信跟踪等。在程序运行时,这些模块会被调用来实现对EXE文件的深度分析。DLL文件的使用可以减少程序体积,...
`NSFileManager`是Objective-C中用于文件系统操作的主要类,它提供了多种方法来管理沙盒中的文件和目录。 一、`NSFileManager`基础 `NSFileManager`是一个系统服务类,通过它我们可以进行文件的创建、删除、移动、...
沙盒目录简介 Documents 目录:您应该将所有的应用程序数据文件写入到这个目录下。这个目录用于存储用户数据。该路径可通过配置实现iTunes共享文件。可被iTunes备份。 Library 目录:这个目录下有两个子目录: ...
源代码在被写入沙盒时即被加密,只有在沙盒内部解密后才能被读取和编辑。这种动态加密技术确保了即使数据被非法获取,也无法在沙盒之外解读其内容,极大地提升了数据的安全性。 此外,SDC还具备严格的权限管理机制...
PaaS(Platform as a Service)沙盒机制是云计算平台中的一种关键安全措施,它为运行在云端的应用程序提供了一个受限的执行环境,确保应用程序在使用资源时不会超出预设的限制,同时保护平台免受恶意代码的攻击。...
3. 文件系统访问限制:应用程序被严格限制在自己的沙盒内,不能读写沙盒外的文件系统。这一限制不仅限于其他应用的文件夹,也包括系统级文件夹。这种限制确保了iOS系统的整体安全性。 4. 沙盒目录结构:每个应用的...