iOS---沙盒路径和获取路径的方法

来源:互联网 发布:unity3d texture2d 编辑:程序博客网 时间:2024/06/11 11:44

转载:http://blog.csdn.net/zhaoyya/article/details/40180499


iOS8之后,把Bundle和那三个文件夹分开放置了,分别存放在不同的文件夹中:

Bundle路径:

~/User/Library/Developer/CoreSimulator/Devices/FE29AAC6-3DB0-45AD-95B3-68E0907BA5A0/data/Contaners/Bundle/Application/9566EEA4-D274-4513-96BD-53FFFC4FAD4E/…


沙盒路径:

~/User/Library/Developer/CoreSimulator/Devices/FE29AAC6-3DB0-45AD-95B3-68E0907BA5A0/data/Containers/Data/Application/EDF4BF77-DD57-4764-9BFC-A74E91D8ACD2/Documents/…

// 无论是Bundle,还是沙盒路径,在应用程序每次重新运行时,沙盒文件夹名称都会发生改变。


NSUserDefaults路径也发生了改变,这个路径在模拟器和真机上是有一些区别的:

~/User/Library/Developer/CoreSimulator/Devices/FE29AAC6-3DB0-45AD-95B3-68E0907BA5A0/data/资源库/Preferences/...

需要注意的是:当我们删除应用程序后,在模拟器中,plist文件还是会存在的,并不会被删除。但是在真机中,plist文件是会被删除的


另外提供找路径的方法:

1,获取家目录路径函数:
NSString *homeDir = NSHomeDirectory();
2,获取Documents目录路径方法:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
3,获取Caches目录路径方法:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachesDir = [paths objectAtIndex:0];
4,获取tmp目录路径方法:
NSString *tmpDir = NSTemporaryDirectory();
5,获取应用程序程序包中资源文件路径方法:
例如获取程序包中一个图片资源(apple.png)路径方法:
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@”apple” ofType:@”png”];
UIImage *appleImage = [[UIImage alloc] initWithContentsOfFile:imagePath];
代码中mainBundle类方法用于返回一个代表应用程序包对象。

0 0
原创粉丝点击