iOS数据持久化

2021-03-04  本文已影响0人  谢千域

数据持久化的几种方式

NSUserDefaults 、plist  、keychain、归档  、沙盒 、数据库

1.NSUserDefaults

NSUserDefaults用于存储用户的偏好设置用户信息,如用户名,是否自动登录,字体大小等.

2.plist

属性列表文件,全名是Property List,这种文件的扩展名为.plist,因此,通常被叫做plist文件。它是一种用来存储串行化后的对象的文件,用于存储程序中经常用到且数据量小而不经常改动的数据。

3.Keychain(钥匙串)

用于本地重要数据的存储,将数据加密后存储在本地更安全.如:密码,秘钥,序列号

4.归档(NSKeyedArchiver)

归档是iOS开发中数据存储常用的技巧,归档可以直接将对象储存成文件,把文件读取成对象。归档可以存储的数据类型更加多样,并且可以存取自定义对象。对象归档的文件是保密的,在磁盘上无法查看文件中的内容,更加安全。

5.沙盒

持久化在Document目录下,一般存储非机密数据。当App中涉及到电子书阅读、听音乐、看视频、刷图片列表等时,推荐使用沙盒存储。因为这可以极大的节约用户流量,而且也增强了app的体验效果.

Application:存放程序源文件,上架前经过数字签名,上架后不可修改

Documents: 保存应运行时生成的需要持久化的数据,iTunes同步设备时会备份该目录。例如,游戏应用可将游戏存档保存在该目录。

tmp: 保存应运行时所需的临时数据,使⽤完毕后再将相应的文件从该目录删除。应用没有运行时,系统也可能会清除该目录下的文件。iTunes同步设备时不会备份该目录

Library/Caches: 保存应用运行时生成的需要持久化的数据,iTunes同步设备时不会备份该目录。一般存储体积大、不需要备份的非重要数据,比如网络数据缓存存储到Caches下。

Library/Preference: 保存应用的所有偏好设置,如iOS的Settings(设置) 应会在该目录中查找应⽤的设置信息。iTunes同步设备时会备份该目录

6.数据库

存储数据量较大的数据,一般使用数据库来存储。如:FMDBCoreDataRealmWCDB

上一篇下一篇

猜你喜欢

热点阅读