IOS 文件系统
本文使用到的来自Apple的代码,文本以及图片,版权属于Apple.
IOS File System
iOS 10.3以后使用APFS文件系统。
沙盒模式
iOS上的文件系统结构是为了让每个App独立运行而设计的。沙盒文件夹(Sandbox)是App的活动边界,其下分多个容器文件夹(Container):
- Bundle Container 存放程序包
- Data Container 用户数据和应用产生的数据
- iCloud Container
一般来说,应用不能访问超出其自身的沙盒边界。例外情况是应用需要访问系统公有资源,例如Contacts, Photos, Music等等,系统框架会协助App完成这些资源的调取。
常用文件夹
路径 | 描述 |
---|---|
AppName.app | Bundle Container. 只读。不备份 |
Documents/ | 用户数据;读写;外部可见;备份 |
Documents/Inbox | 其他应用传入的数据;可读可删除,不可新增或修改;备份 |
Library/ | 非用户数据;读写;备份(除cache文件夹) |
tmp/ | 临时文件;读写;不备份;可能定时由系统清除 |