在iOS平台上,每个app都有一个存储空间,用以存储照片、声音文件、文本、属性列表等,我们称之为沙盒。在沙盒里,app可以自己读写文件,但仅限于自己的沙盒,不可访问其他app沙盒,不可进行相互间通信,除非通过URL Scheme。
在iOS开发中,Documents、Library、temp都是沙盒的根目录结构,但是他们三者之间有什么区别呢?
Documents: 用于存储用户数据,iTunes备份和恢复的时候会包括此目录,所以,iOS开发者一般将程序中建立的或在程序中浏览到的文件数据保存在该目录下。
Library: 包含两个子目录,Caches 和 Preferences。Caches用来存放用户需要换成的文件。Preferences是APP的偏好设置,可以通过NSUserDefaults来读取和设置。
tmp: 用于存放临时文件,这个可以放一些当APP退出后不再需要的文件。
(更多数据存储资料请看《iOS数据存储》)
要了解沙盒,我们就需要打开沙盒了解详细情况,下面就是打开模拟器沙盒两种主要方法:
方法一:在文件夹中打开
/Users/maiziedu/Library/Application Support/iPhone Simulator/
直接在Finder->前往->前往文件夹,输入上面的内容即可。这里我用的是麦子学院的电脑进行的讲解,大家在使用中要记住将maiziedu换成你的电脑用户名。
方法二:通过Finder查找
模拟器上APP的沙盒是在用户目录下的资源库里面,但是资源库是往往都是隐藏文件夹。所以查看沙盒之前,先将隐藏文件夹显示出来。显示隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles -bool true
同样,隐藏隐藏文件的命令:
defaults write com.apple.finder AppleShowAllFiles -bool false
将true改成false即可;
查找步骤如下图:
这就是iOS APP的沙盒原理、根目录结构及查看方法,还不清楚的亲,请收藏。