iOS沙盒(sandbox)机制
来源:互联网 发布:dafa888信誉第一js 编辑:程序博客网 时间:2024/06/03 19:42
1、沙盒的基本概念和作用
每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用的文件系统隔离, ios系统不允许访问其他应用的应用沙盒。在ios8中已经开放访问(extension)。extension是iOS8新开放的一种对几个固定系统区域的扩展机制,它可以在一定程度上弥补iOS的 沙盒机制对应用间通信的限制。
2、应用沙盒一般包括以下几个文件目录:应用程序包、Documents、Libaray(下面有Caches和 Preferences目录)、tmp。
1、应用程序包:包含所有的资源文件和可执行文件。2、Documents:保存应用运行时生成的需要持久化的数据,iTunes会自动备份该目录。苹果建议将程 序中建立的或在程序中浏览到的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目 录3、tmp:保存应用运行时所需的临时数据,使用完毕后再将相应的文件从该目录删除。应用没有运行 时,系统也有可能会清除该目录下的文件,iTunes不会同步该目录。iphone重启时,该目录下的 文件会丢失。4、Library:存储程序的默认设置和其他状态信息,iTunes会自动备份该目录。4.1、Libaray/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除。一 般存放体积比较大,不是特别重要的资源。4.2、Libaray/Preferences:保存应用的所有偏好设置,ios的Settings(设置)应用会在该目录中查找 应用的设置信息,iTunes会自动备份该目录。
2、获取沙盒路径
1、获取绝对路径的方法: NSSearchPathForDirectoriesInDomains 返回一个绝对路径用来存放我们需要储存的文件第一个参数:要获取的沙盒文件夹名称第二个参数:NSUserDomainMask = 1,//用户主目录中 NSLocalDomainMask = 2,//当前机器中 NSNetworkDomainMask = 4,//网络中可见的主机 NSSystemDomainMask = 8,//系统目录,不可修改(/System) NSAllDomainsMask = 0x0ffff,//全部第三个参数:YES/NO 是否获取全路径 YES2、获取不同区域//Document目录 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString *path = [paths objectAtIndex:0];//Cache目录 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, ask, YES);NSString *path = [paths objectAtIndex:0];//Libaray目录 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);NSString *path = [paths objectAtIndex:0];//tmp目录NSString *tmpDir = NSTemporaryDirectory();
3、在沙盒文件中创建文件夹
在Document目录下创建新的文件夹test
0 0
- iOS沙盒(sandbox)机制
- iOS 沙盒(sandbox)机制和文件操作
- IOS沙盒(sandbox)机制和文件操作
- IOS沙盒(sandbox)机制和文件操作
- IOS沙盒(sandbox)机制和文件操作
- iOS 沙盒(sandbox)机制和文件操作
- iOS沙盒(sandbox)机制和文件操作
- iOS沙盒(sandbox)机制和文件操作
- 【理解】 iOS沙盒(sandbox)机制(一)
- 【理解】 iOS沙盒(sandbox)机制(二)
- IOS学习之IOS沙盒(sandbox)机制和文件操作
- IOS学习之IOS沙盒(sandbox)机制和文件操作
- IOS学习之IOS沙盒(sandbox)机制和文件操作
- ios开发之IOS沙盒(sandbox)机制和文件操作
- IOS学习之IOS沙盒(sandbox)机制和文件操作
- IOS学习之IOS沙盒(sandbox)机制和文件操作
- iOS学习之iOS沙盒(sandbox)机制和文件操作
- iOS学习之iOS沙盒(sandbox)机制和文件操作
- 使用非 GUI 模式运行 JMeter 压力测试
- 标准Web系统的架构分层
- 在centos安装bugzilla4.4.10、nginx,安装简体中文包
- discuz 关于上传大文件失败的
- linux中忘记root密码
- iOS沙盒(sandbox)机制
- Ubuntu14.04 安装及问题解决
- 第一篇博客
- 最强日期正则表达式
- JavaWeb学习篇——使用过滤器及装饰器设计模式解决全站乱码问题
- Android触摸屏失效后的操作方法
- Apache增加mod_expires模块+配置指南
- while loop
- Java用Calendar来获取与更改日期