iOS沙盒目录清单

本文深入探讨了iOS开发中的Swift编程语言,分享了实用的编程技巧和最佳实践,帮助开发者提高开发效率并构建高质量的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 Documents

 
 用于存储用户生成的文件、其他数据及其他程序不能重新创建的文件,默认文件通过iCloud自动备份。如果不需要iCloud备份,则设置标记
 
 NSURLIsExcludedFromBackupKey,注明不备份
 

 1.1 读取Documents目录代码

 
 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 
 NSString *path = [paths objectAtIndex:0];
 
 NSLog(@"path:%@", path);


 
 

 1.2 标记不备份文件

 

 
 + (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL
 {
     assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]);
     
     NSError *error = nil;
     BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
     forKey: NSURLIsExcludedFromBackupKey error: &error];
     if(!success){
     NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);
 }
    return success;
 }


 二、 Library

 
 存储项目缓存,常用设置等
 

 2.1 读取Cache目录代码

 
 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
 NSString *path = [paths objectAtIndex:0];
 NSLog(@"%@", path);
 

 

 2.2 读取Library目录

 
 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
 NSString *path = [paths objectAtIndex:0];
 NSLog(@"%@", path);
 


 

 三、 temp

 
 只是临时使用的数据应该保存到 <Application_Home>/tmp 文件夹。尽管 iCloud 不会备份这些文件,但在应用在使用完这些数据之后要注意随时删除,避免占用用户设备的空间
 
 
 

 3.1读取temp文件夹

 
 NSString *tmpDir = NSTemporaryDirectory();
 NSLog(@"%@", tmpDir);
 


 

 四、项目自带的.bundle资源束

 
 项目自带的资源存放在.bundle中这些资源只读不能写
 
 NSString *defaultDBPath = [[NSBundle mainBundle] resourcePath];


 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值