iOS沙盒机制
2016-06-04 21:15
363 查看
沙盒:每一个iOS应用程序都会为自己创建一个文件系统目录(文件夹), 这个独立,封闭, 安全的空间,就叫做沙盒.
iOS的沙盒机制(SandBox)
1, 沙盒是一种安全体系.
2, 他规定了应用程序只能在为该应用程序创建的文件夹(沙盒)内访问文件,不可以访问其他沙盒内的内容(iOS8 已经部分开放访问).
3, 所有的非代码文件都保存在这个地方,比如图片,声音, 属性列表(plist),sqlite数据库和文本文件等.
特点:每个应用程序的活动范围都限定在自己的沙盒里.不能随意跨越自己的沙盒去访问别的应用程序的沙盒.应用程序向外请求或者接受数据都需要经过全县认真.
获取沙盒路径的方法:
NSString *path = NSHomeDirectory();
沙盒文件夹下有三个系统生成的文件夹Documents, Library, tmp
Documents:存放创建保存的数据,iTunes 会自动的备份该目录.
Library:(1)Caches存放缓存文件
(2)Preferences:存放偏好设置,(注意我们直接使用NSUserDefaults 操作该文件夹即可)
tmp: 存储临时文件,比如:下载的zip压缩包,解压后直接删除
NSUserDefaults 直接操作Preferences 文件夹
// 一, 获取Documents 文件夹路径
//1, 查找的文件路径
//2, NSSearchPathDomainMask domainMask:在哪个域中查找,参数
//3, 是否显示详细路径
NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
//二, 获取tmp 目录
NSString *tmpPath = NSTemporaryDirectory();
//三, 获取Library 目录
NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) firstObject];
//四, 获取Library/Caches 目录
NSString *libCachesPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) firstObject];
//五, 获取Library/Preferences 目录
//注意:通常情况下, Preferences 由系统维护,我们只需要通过NSUserDefaults 来操作即可
iOS的沙盒机制(SandBox)
1, 沙盒是一种安全体系.
2, 他规定了应用程序只能在为该应用程序创建的文件夹(沙盒)内访问文件,不可以访问其他沙盒内的内容(iOS8 已经部分开放访问).
3, 所有的非代码文件都保存在这个地方,比如图片,声音, 属性列表(plist),sqlite数据库和文本文件等.
特点:每个应用程序的活动范围都限定在自己的沙盒里.不能随意跨越自己的沙盒去访问别的应用程序的沙盒.应用程序向外请求或者接受数据都需要经过全县认真.
获取沙盒路径的方法:
NSString *path = NSHomeDirectory();
沙盒文件夹下有三个系统生成的文件夹Documents, Library, tmp
Documents:存放创建保存的数据,iTunes 会自动的备份该目录.
Library:(1)Caches存放缓存文件
(2)Preferences:存放偏好设置,(注意我们直接使用NSUserDefaults 操作该文件夹即可)
tmp: 存储临时文件,比如:下载的zip压缩包,解压后直接删除
NSUserDefaults 直接操作Preferences 文件夹
// 一, 获取Documents 文件夹路径
//1, 查找的文件路径
//2, NSSearchPathDomainMask domainMask:在哪个域中查找,参数
//3, 是否显示详细路径
NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
//二, 获取tmp 目录
NSString *tmpPath = NSTemporaryDirectory();
//三, 获取Library 目录
NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) firstObject];
//四, 获取Library/Caches 目录
NSString *libCachesPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) firstObject];
//五, 获取Library/Preferences 目录
//注意:通常情况下, Preferences 由系统维护,我们只需要通过NSUserDefaults 来操作即可
相关文章推荐
- iOS 安全模型浅析(二) ---- 沙盒机制
- iOS开发(OC)——日期选择器
- 介绍一个轻量级iOS安全框架:SSKeyChain
- 个人开发总结(1)-ios创建对象
- 一文让你彻底了解iOS字体相关知识
- 第九天 iOS 绘图
- iOS 多线程处理 ----NSThread, NSOperation,GCD
- iOS开发中经常用到的细节
- iOS高级开发实战技巧讲解
- iOS中按钮根据tag来区分
- iOS 将字典 数组 转换成 NSdata 或者 NSString
- 写单例,看完这个就够了
- iOS--轮播视图
- 【iOS开发】提交构建版本出错:ERROR ITMS-90635
- OC&&IOS开发小技巧总结
- iOS 多线程 GCD
- iOS View的Frame和bounds之区别,setbounds使用
- IOS infoplist介绍
- IOS(sandbox)沙盒和文件操作(NSFileManager)
- 【51CTO学院三周年】没妹子 没票子 iOS大神之路