美文网首页
iOS 数据持久化的方式

iOS 数据持久化的方式

作者: JimmyL | 来源:发表于2019-07-09 08:57 被阅读0次

一、什么是数据持久化

所谓的数据持久化,就是将数据保存到硬盘中,使得在应用程序或机器重启后可以继续访问之前保存的数据,既可以减少用户流量消耗,也可以增强APP的体验效果。

二、沙盒

沙盒(sandbox):iOS系统为每个应用程序创建的存储空间,且每个应用程序只能访问自身的存储空间,不能相互通信,所有的非代码文件都要保存在此,例如属性文件plist、文本文件、图像、图标、媒体资源等。
[图片上传中...(image.png-a7c639-1552281691771-0)]

沙盒目录

沙盒目录下的文件及文件夹:

sandbox.png
获取沙盒目录路径:
NSLog(@"沙盒目录路径:%@", NSHomeDirectory());
沙盒路径.png

Documents

保存应用运行时生成的需要持久化的数据,iTunes会自动备份该目录。
苹果建议将在应用程序中浏览到的文件数据保存在该目录下。

Library

获取 Library 路径:

//获取Library的目录路径
    NSString *libDir = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,NSUserDomainMask,YES) firstObject];
    NSLog(@"Library 路径:%@", libDir);
Library.png

分为 Cache 和 Preferences

Cache

一般存储的是缓存文件,iTunes不会备份该目录。内存不足时会被清除,应用没有运行时,可能会被清除。一般存储体积大、不需要备份的非重要数据,例如音频、视频、图片等数据。
获取 Cache 路径:

// 获取cache目录路径
    NSString *cachesDir = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES) firstObject];
    NSLog(@"Cache 路径:%@", cachesDir);
Preferences

保存应用程序的所有偏好设置iOS的Settings(设置),我们不应该直接在这里创建文件,而是需要通过NSUserDefault这个类来访问应用程序的偏好设置。
iTunes会自动备份该文件目录下的内容。
比如说:是否允许访问图片,是否允许访问地理位置......

tmp

临时文件夹,iTunes不会备份这个目录,用来保存临时数据,应用退出时会清除该目录下的数据。
tmp目录获取:

// 获取tmp目录路径
NSString *tmp = NSTemporaryDirectory();

SystemData

未找到相关文档来说明起存储规则,有待继续探究。。。

.com.apple.mobile_container_manager.metadata.plist

该文件为隐藏文件,从文件名可以看出该文件为一个管理文件,对当前移动设备管理元数据,从中可获取当前应用的唯一标示;

三、持久化方式

常用的持久化方式包括以下几种:

  1. 属性列表(plist存储)
  2. 偏好设置(NSUserDefaults)
  3. 归档序列化存储
  4. CoreData
  5. SQL

相关文章

  • iOS本地数据持久化

    iOS本地数据持久化 iOS本地数据持久化

  • 数据持久化基础知识

    参考: iOS开发中的4种数据持久化方式【一、属性列表与归档解档】 iOS开发中的4种数据持久化方式【二、数据库 ...

  • iOS数据持久化方式

    iOS数据持久化方式 文件 归档(NSKeyedArchiver) 属性列表(NSUserDefaults) 数据...

  • 数据持久化方式

    数据持久化方式 ios中的数据持久化方式,基本上有以下四种:属性列表(plist文件)、对象归档(NSKeyedA...

  • iOS本地数据持久化

    转载自:CocoaChina - iOS本地数据持久化 本文内容:iOS本地数据持久化的几种类型iOS本地数据持久...

  • iOS开发之数据的持久化存储机制

    IOS中数据的持久化保存这块内容,类似于Android中文件的几种常见的存储方式。对于数据的持久化存储,ios中一...

  • swift 之归档和解归档

    数据持久化的方式有很多种,归档是其中的一种,说起数据持久化的方式,iOS 中基本有以下几种方式:sqlite存储、...

  • iOS数据持久化

    iOS数据持久化 iOS应用数据存储的常用方式 XML属性列表(plist)归档 Preference(偏好设置)...

  • iOS 数据持久化方案-Realm的使用

    iOS 数据持久化方案-Realm的使用 iOS 数据持久化方案-Realm的使用

  • iOS--FMDB

    一、数据持久化 数据持久化是通过文件将数据存储在磁盘上 1、iOS下主要有四种数据持久化方式 1)属性列表 2)对...

网友评论

      本文标题:iOS 数据持久化的方式

      本文链接:https://www.haomeiwen.com/subject/qnfvpqtx.html