以配置信息(UserDefaults)的形式存储应用数据
存储配置信息,可以使用 UserDefaults
,这是一种最简单的储存数据的方法,适合用来储存轻量级的数据,UserDefaults
支持储存的数据类型只有 Data
,String
,Number
,Date
,Array
和 Dictionary
这几种。
声明:笔者自身对 UserDefaults
也是初学,而本文介绍的 UserDefaults
知识也都是自己的一些理解,同时尽量不涉及过于原理性的内容,一切以普通工程师实用为目标原则。其中可以想象在很多地方会有理解的错误,还请多包涵。如您发现问题,也往不吝赐教指正,感激不尽。
储存
储存值为「Hello」的字符串:
UserDefaults.standard.set("Hello", forKey: "helloString")
而如果准备将储存的数据在主程序(Container)和其他扩展(Extensions)之间传递,则需要在 UserDefaults
中添加 Group
字符串:
UserDefaults.init(suiteName: "group.com.xxx.xxx")?.set("hello", forKey: "helloString")
加载
加载 Key 值为「helloString」的数据:
let helloStr = UserDefaulte.standard.object(forKey: "helloString")
print(helloStr)
// Output: Hello
同样在其他扩展(Extensions)中,也需要添加 Group
字符串,才能加载相应数据。
let helloString = UserDefaults.init(suiteName: "group.com.xxx.xxx")?.value(forKey: "helloString")
print(helloStr)
// Output: Hello
2018 年 9 月 10 日