IOS:沙盒机制
2013-12-15 21:28
274 查看
ios沙盒机制(SandBox)
iOS中的沙盒机制是一种安全体系,它规定了应用程序只能在为该应用程序创建的文件夹里读取文件,不可以访问其他地方的内容,所有的非代码文件都保存在这个地方,比如图片、声音、属性列表和文本文件等。
1.每个应用程序都在自己的沙盒内
2.应用程序间不能共享数据,不能随意去访问别的应用程序沙盒内容
3.应用程序向外请求或者接收数据都要经过权限认证。
4.沙盒根目录里有三个文件夹:Documents,一般应该把应用程序的数据文件存到这个文件夹里,用于存储用户数据或其他应该定期备份的信息。Library下有两个文件夹,Caches存储应用程序再次启动所需的信息,Preferences包含应用程序偏好设置文件,不过不要在这里修改偏好设置。temp,存放临时文件,即应用程序再次启动不需要的文件。
查找模拟器沙盒文件夹在Mac电脑上的位置:
点击Finder,选择“前往文件夹”,再出现的窗口里输入“~/library”,点击“前往”,选择Application Support>iPhone Simulator选择应用程序使用的模拟器型号,然后选择“
Applaction”, 就会出现所有模拟器应用程序的沙盒,点击你所想选择的应用程序沙盒,就会出现上述三个文件夹。
(1)获取沙盒根目录
1)用NSHomeDirectory()获取
NSString
*Path=NSHomeDirectory();
NSLog(@"path=%@",Path);
2)用用户名获取
NSString *userName=NSUserName();
NSString *RootPath=NSHomeDirectoryForUser(userName);
NSLog(@"rootPath=%@",RootPath);
(2)获取Document路径
NSString *documentPath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSSystemDomainMask,YES)objectAtIndex:0];
[documentPathstringByAppendingString:@"plist.txt"];//在Document里面里添加文件
(3)获取temp文件路径
NSString *tempPath=NSTemporaryDirectory();
NSLog(@"tempPath=%@",tempPath);
(4)获取Caches文件路径
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,
YES);
NSString *cachesDir=[paths objectAtIndex:0];
NSLog(@"cachesDir=%@",cachesDir);
iOS中的沙盒机制是一种安全体系,它规定了应用程序只能在为该应用程序创建的文件夹里读取文件,不可以访问其他地方的内容,所有的非代码文件都保存在这个地方,比如图片、声音、属性列表和文本文件等。
1.每个应用程序都在自己的沙盒内
2.应用程序间不能共享数据,不能随意去访问别的应用程序沙盒内容
3.应用程序向外请求或者接收数据都要经过权限认证。
4.沙盒根目录里有三个文件夹:Documents,一般应该把应用程序的数据文件存到这个文件夹里,用于存储用户数据或其他应该定期备份的信息。Library下有两个文件夹,Caches存储应用程序再次启动所需的信息,Preferences包含应用程序偏好设置文件,不过不要在这里修改偏好设置。temp,存放临时文件,即应用程序再次启动不需要的文件。
查找模拟器沙盒文件夹在Mac电脑上的位置:
点击Finder,选择“前往文件夹”,再出现的窗口里输入“~/library”,点击“前往”,选择Application Support>iPhone Simulator选择应用程序使用的模拟器型号,然后选择“
Applaction”, 就会出现所有模拟器应用程序的沙盒,点击你所想选择的应用程序沙盒,就会出现上述三个文件夹。
(1)获取沙盒根目录
1)用NSHomeDirectory()获取
NSString
*Path=NSHomeDirectory();
NSLog(@"path=%@",Path);
2)用用户名获取
NSString *userName=NSUserName();
NSString *RootPath=NSHomeDirectoryForUser(userName);
NSLog(@"rootPath=%@",RootPath);
(2)获取Document路径
NSString *documentPath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSSystemDomainMask,YES)objectAtIndex:0];
[documentPathstringByAppendingString:@"plist.txt"];//在Document里面里添加文件
(3)获取temp文件路径
NSString *tempPath=NSTemporaryDirectory();
NSLog(@"tempPath=%@",tempPath);
(4)获取Caches文件路径
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,
YES);
NSString *cachesDir=[paths objectAtIndex:0];
NSLog(@"cachesDir=%@",cachesDir);
相关文章推荐
- ios7横竖屏适配
- ios NSFileManager创建目录、文件
- iOS开发之多媒体播放
- iphone iOS7恢复到iOS6教程
- IOS 导航栏的 一些用法
- iOS 关于枚举的使用
- iOS xcode编译错误no such product type for the 'iphonesimulator' platform
- ios 入门之Hello World
- iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
- iOS多线程编程之NSThread的使用
- ios各种动画效果
- iOS更改应用显示名称
- iOS开发中常用函数及控件
- IOS中图片相关操作(读取、保存、绘制、其它相关)
- IOS代理浅析
- IOS中NSTimer使用及runloop
- IOS开发之程序首次启动时加载关于程序应用的简介
- IOS中如何限制TextField中输入的类型以及长度
- ios ViewController 页面跳转
- iOS 画圆弧或扇形