数据持久化基础:归档与SQLite3的应用
在移动应用开发中,数据持久化是一个关键的功能,它能确保应用在关闭或重启后数据不会丢失。本文将介绍几种数据持久化的方法,包括对象归档和使用iOS嵌入式SQLite3数据库。
1. 应用状态与数据验证
在iOS应用中,按下Home键通常不会立即退出应用,而是将其置于后台状态,以便用户随时快速恢复使用。若要验证数据是否真的被保存,可以完全退出iOS模拟器,然后从Xcode重新启动应用,这相当于重启iPhone,应用会以全新状态启动。
2. 归档模型对象
属性列表序列化虽然方便,但有一定局限性,只能存储一小部分对象类型。而归档(Archiving)是一种更通用的序列化方式,任何对象都可以实现。只要类中的每个属性是标量类型(如Int或Float)或符合NSCoding协议的类的实例,就可以完全归档对象。
2.1 遵循NSCoding协议
NSCoding协议声明了两个必需的方法:
- encodeWithCoder(_:) :将对象编码到归档中。
- init(coder:) :通过解码归档创建新对象。
以下是一个简单的示例类 MyObject :
class MyObject : NSObject, NSCoding, NSCopying {
var number = 0;
var string = ""
var child: MyObject?
超级会员免费看
订阅专栏 解锁全文
34

被折叠的 条评论
为什么被折叠?



