iPhone的存储逻辑就是,你不主动保存,系统就默认把它保存在app里面。
像在QQ.微信他就是以缓存文件文件存在的。
一旦你清理了缓存,大部分的文件就会被清除。但你保存在手机里的不会随app被清理,因为它已经被复制到了名为照片的app中。除非你在照片中再次把它删除。
因为沙盒机制的缘故,每个 app 的空间都是相互独立的,谁也访问不到彼此的文件,就连系统级 app 也是如此,没错,文件 app 也是一样的,你可以想象 iPhone 就是一栋大楼,每个 app 都有一个独立的房间,app 的数据活动空间都只在这个房间内,这就是为什么沙盒机制可以极大确保系统安全性的原因。
如果房间 A 的人想访问房间 B 的数据怎么办?只要房间 A 分享一下就好了,你可以想象大楼有一个专门的运送员,只有这个运送员可以在房间间传送文件。
app 分享的文件是完完全全复制一份的,沙盒机制已经说的很清楚了,房间 A 和房间 B 无法直接访问彼此的文件,app 每次启动时房间号都是随机分配变化的,这样就无法追踪 app 文件的位置,所以每一次分享都是由运送员单独复制一份,再传送过去。
但是在房间内文件复制了 100 份和复制 1000 份,空间不变。文件改变时,记录的也只是改变的部分。这样就极大优化了空间的占用。
前面也说了,每个 app 的文件都是不能互通的,就连文件 app 也不例外,那文件 app 要怎么展示所有 app 的文件呢?难道把每个房间的文件都复制一份放在自己房间下面吗?哈哈,当然是不可能的,所以,大楼里除了可以在自己的房间里放东西,还可以在一个公共的仓库放东西,谁都可以放东西在这里,也可以查看别人的东西。这样,只要把文件放在公共的仓库里,就不需要运送员送来送去了,只要告诉其他 app 来这里拿就行,也就没有一份文件复制多份的问题了。
如果你想要删除某app,那么iPhone会给你两种选择,一种是保留文档和数据,一种是彻底删除。
第一种的好处在于当你需要一定的存储空间时,比如系统升级,或者暂时下载大文件,就可以删除一部分大应用,保留它的数据,来节省空间。后期有空间了,再下载毫不影响使用。
第二种就师彻底删除,这个好理解,就是抹去一切痕迹,再下载使用时就是重新开始。像游戏,如果没有云存档你就需要重新开始。这种方法在面对某些软件的数据较大,你又不知道怎么删除时比较适合。
卸载和删除,就是iPhone给使用者的选择。