- KeyChain
KeyChain(钥匙串)存储是Apple平台一个专门用来存储用户敏感信息的一种存储方式,一般用来存储密码、秘钥等数据,可以用于不同App之间的共享。 - UserDefaults
UserDefaults是iOS平台下一个轻量级的存储模式,主要用来存储应用程序的配置信息。可以支持的类型有NSData、NSString、NSNumber、NSDate、NSArray、NSDictionary等,如果要存储其他类型数据,一般要转成之前的几种数据类型存储。而NSArray、NSDictionary容器的元素也要求是以上几种数据类型。存储其他类型的数据会出现一些很奇怪的问题、 - Plist
和UserDefaults差不多,一般UserDefaults用于存储程序运行过程中的一些配置信息,而Plist用于存储程序开发时需要持久化的一些预制信息。 - 文件存储
主要用于存储图片、视频、音频等体积比较大的数据,其基础存储类型是NSData二进制数据,对类型没有什么限制,所以可以用自己的方式对NSData进行一些加密处理。 - 归档
归档是另一种形式的序列号,是任何对象都可实现的更常规的类型。只要遵守了NSCoding协议或NSSecureCoding协议,并且实现了协议里归档和解归档的方法的类创建的对象才能进行归档。 - SQLite
嵌入式关系型数据库,一般用于存储有相同数据结构的大批量数据。但是使用起来比较复杂,需要考虑数据库设计、升级、线程同步等。一般OC中使用FMDB,Swift中使用GRDB。 - CoreData
是苹果提供的关系型数据库,没有使用过 - Realm
Ream一个专门针对移动平台设计的映射型数据库,也是一个跨平台的移动数据库引擎。其优势在于开源、跨平台、简单易用、线程安全等
iOS 持久化存储
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...