User Tools

Site Tools


Sidebar

Go Back

Refresh

You are not allowed to add pages

Direct Link

library:ios:appfolder

This is an old revision of the document!


IOS App Sandbox Folder

在iPhone的沙箱模型有四个文件夹,分别是:

  • documents
  • tmp
  • app
  • library

创建文件的时候会先创建文件的路径

1. 文档目录 Documents

有关应用的所有数据文件应该写入到这个目录下,这个目录用于存储用户数据或者其他应该定期备份的信息。

  • 获取Documents目录路径的方法
NSString*documentPath  = NSSearchPathForDirectoriesInDomains ( NSDocumentDirectory , NSUserDomainMask , YES ).firstObject;
  • 注:

上面NSDocumentDirectory参数一位置:directory为获取哪个文件夹

NSUserDomainMask 参数二位置:domainMask为在哪个范围内搜索,NSUserDomainMask 表示在用户的手机上查找

YES 参数三位置:expandTilde为是否展开全路径。YES:表示展开全路径;NO:不会展开全路径,会把应用沙盒的路径用波浪号(~)代替

2. 库目录 library

这个目录下面还有两个子目录:Caches 和 Preferences

  • Caches目录:

缓存目录。用于存储应用程序专用的支持文件,保存应用程序再次启动过程中需要的信息。iTunes不会同步此文件夹,适合存储体积大,不需要备份的非重要数据。

NSString *path = NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES).firstObject;
  • Perferences目录:

包含应用程序的编号设置文件,存放NSUserDefaults保存的.plist文件。iTunes同步该应用时会同步该文件夹中的内容。

NSUserDefaults  *userDefaults = [NSUserDefaultsstandardUserDefaults];

直接调用方法就能保存入偏好设置里面 [userDefaults setObject:@“hello”forKey:@“hello”]; [userDefaults synchronize];

3. 临时文件夹 tmp

iTunes不会同步此文件夹,里面存的是临时文件,随时可以被删除,一般不怎么用 NSString *tmppath = NSTemporaryDirectory();

4. 沙盒主目录路径

NSString* homePaht = NSHomeDirectory();

library/ios/appfolder.1670638596.txt.gz · Last modified: 2022/12/10 10:16 by lhaosen