iOS不同应用间是沙盒隔离的,每个应用的沙盒下共有三个文件:
Documents:
- 保存应用程序的本身运行时产生的文件或者数据,iCloud备份目录。
Library
- Caches:
- 存放体积大又不需要备份的数据。
- 保存临时文件。“后序需要使用”,例如:缓存图片,离线数据(地图数据)
- 系统不会清理cache目录中的文件。 *在程序开发时,必须提供cache目录的清理解决方案。
- Perference:
- 用户偏好,使用NSUerDefault直接读写 (如果要想数据及时写入磁盘,还需要调用一个同步方法)。
- tmp:
- 保存临时文件,后续不需要使用。
- tmp目录的文件,系统会自动清理。
- 重新启动时,tmp目录会自动被清空。
- 系统字盘空间不足时,系统也会自动清理。
文件存储形式:
iOS位于沙盒目录下的存储方式:
- 属性列表 NSUserDefault,类似androd的sp,存储的形式为plist;
- 对象归档NSKeyArchiver
- 文件存储主要存储在应用程序沙盒目录的Documents和library/cachce目录