iOS_SN_详解沙河(转载)
一 查看沙盒结构
和一些百度来的博客显示隐藏稳文件的方式不同,本文也提供两种方式,简单粗暴。
方式一 使用工具simpholders(推荐)
下载链接
http://simpholders.com/
效果如图
方式二 直接使用代码
用以下代码,log出documents/路径
NSURL * url = [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
- 1
比如我Log出的结果
/Users/huangwenchen/Library/Developer/CoreSimulator/Devices/158D1CE6-0444-454B-B248-798726D6BC40/data/Containers/Data/Application/77B749FB-7B2F-4AE5-BE24-039BF3760F67/Documents/
- 1
然后,双击finder->前往文件夹->把上述路径复制进去
二 沙盒目录介绍
沙盒的目录如图
不难看出,主要包括三大部分,Bundle,Data和iCloud。
而Data又包括三部分,Documents,Library,Temp.
然后,我们介绍下沙盒的每部分作用。
| 名称 | 作用 |
|---|---|
| AppName.app | App的Bundle包括app和app所有的资源(安装时候的图标,保存在应用包里的图片),只读。不会被Itunes备份,只会在最初始从App store的时候同步一次。 |
| Documents/ | 存储用户产生的内容。这个目录下的文件可以通过文件共享暴露给用户,也就是说,这个目录下存储的只能是你想暴露给用户的东西。iTunes备份 |
| Library/ | 非用户文件的顶级目录,用这个目录来存储哪些不想暴露给用户的文件。这个目录有很多子目录,在下文详细阐述。 |
| tmp/ | 临时文件,App应当在文件不需要使用的时候把该文件删除。存储那些不会在两次运行App都要使用的数据。不会被iTunes备份。 |
Library的子目录
| 名称 | 作用 |
|---|---|
| Caches | 写入那些App能够很容易重新创建的文件,App要管理这个目录,在适当的时候添加或者删除文件。例如网页的缓存文件。。 |
| Preferences | 用户偏好信息。例如NSUserDefaults久存储在这里 |
三 验证
这里打开我之前写的一个NSURLSession的Demo沙盒
我们通过上述的方式,打开沙盒看看,里面到底有什么东西。
先看看Bundle目录
我的模拟器装了三个软件,正好对应这里的三个Bundle
再看看Data目录,正好三个目录对应着上文的三个目录 ,
可以看到,在看看Library的字目录,对应存储着Cache,Cookie,和Preferences信息。
iOS_SN_详解沙河(转载)的更多相关文章
- linux进程地址空间详解(转载)
linux进程地址空间详解(转载) 在前面的<对一个程序在内存中的分析 >中很好的描述了程序在内存中的布局,这里对这个结果做些总结和实验验证.下面以Linux为例(实验结果显示window ...
- Spring AOP详解(转载)所需要的包
上一篇文章中,<Spring Aop详解(转载)>里的代码都可以运行,只是包比较多,中间缺少了几个相应的包,根据报错,几经百度搜索,终于补全了所有包. 截图如下: 在主测试类里面,有人怀疑 ...
- DNS解析过程详解(转载)
DNS解析过程详解(转载) DNS Domain Name System 域名系统,它就是根据域名查出IP地址. 先说一下DNS的几个基本概念: 一. 根域 就是所谓的“.”,其实我们的网址ww ...
- 高并发网络编程之epoll详解(转载)
高并发网络编程之epoll详解(转载) 转载自:https://blog.csdn.net/shenya1314/article/details/73691088 在linux 没有实现epoll事件 ...
- ServletConfig详解 (转载)
ServletConfig详解 (转载) 容器初始化一个servlet时,会为这个servlet建一个唯一的ServletConfig.容器从DD读出Servlet初始化参数,并把这些参数交给S ...
- Uiautomator ——API详解(转载http://www.cnblogs.com/by-dream/p/4921701.html)
转载来源: 简单的例子 以一个简单的例子开始吧.我们完成一个 " 打开QQ,进入QQ空间,然后退出 " 的case. 代码如下: package QQ; import java.i ...
- JScript中的条件注释详解(转载自网络)
JScript中的条件注释详解-转载 这篇文章主要介绍了JScript中的条件注释详解,本文讲解了@cc_on.@if.@set.@_win32.@_win16.@_mac等条件注释语句及可用于条件编 ...
- BIND9配置文件详解模板[转载]
在CU上看到了一篇关于BIND9配置文件详解的文章,感觉不错,现转载了分享一下. //named.conf 注释说明 by shellyxz@163.com// 此文件对bind9的默认配置文件的说明 ...
- Tomcat内存溢出详解【转载】
本文转载自 http://elf8848.iteye.com/blog/378805 Java内存溢出详解 一.常见的Java内存溢出有以下三种: 1. java.lang.OutOfMemoryEr ...
随机推荐
- pch文件出现no such file or directory错误
一般出现这种情况是由于项目直接拷贝到其他电脑上运行... clang: error: no such file or directory: '/demo2/控件代码/13/Recorder/Recor ...
- UML类图常见的几种关系
关系:泛化(Generalization),实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) ...
- uva 10260 - Soundex
题目:编码翻译,有些字母有对应的数字,有的没有,如果连续对应的数字相同只输出一个. #include <iostream> #include <cstdlib> #includ ...
- 深入剖析C/C++函数的参数传递机制
2014-07-29 20:16 深入剖析C/C++函数的参数传递机制 C语言的函数入口参数,可以使用值传递和指针传递方式,C++又多了引用(reference)传递方式.引用传递方式在使用上类 ...
- TransactionScope的正确用法(转自:http://blog.csdn.net/greystar/article/details/1359960)
前一阵贴了一个关于transactionscope的贴子,以为是MS的BUG.后来经过认真仔细的调试,才找到原因. 原来的代码本身是没有没问题的.只是关于事务资源的处理放错了地方.正确的写法应该如下 ...
- json_encode如何防止汉字转义成unicode
众所周知,json_encode通常会把json中的汉字转义成unicode,但是这并不一定是我们想要的.有时候,我们需要获得汉字形式的json字符串,比如需要获得gbk编码的json字符串(只要把汉 ...
- GO函数倒叙输出
package main import "fmt" func main(){ rec() } func rec(i int){ { return } rec(i+) fmt.Pri ...
- Greatest common divisor(gcd)
欧几里得算法求最大公约数 If A = 0 then GCD(A,B)=B, since the GCD(0,B)=B, and we can stop. If B = 0 then GCD(A,B) ...
- 配置TC2.0运行环境
一. 学习过程 下载TC2.0并打开如图: 这是一个集成的C语言环境包,包括TC.dosbox和一些编译工具,很明显这样我无法判断单个程序的功能,也无法区分哪些程序是必须的. 那么为了搞清楚哪些文件是 ...
- android textview 行间距
设置行间距:android:lineSpacingExtra 设置行间距的倍数:android:lineSpacingMultiplier 如下:设置行间距为3,行间距倍数为1.5 <TextV ...