安卓基础组件023-SharedPerferences
文章目录
- sp介绍
- 初始化sp
- 存储
- 读取数据
- 自动apply
- 存储复杂数据类型
- gson 添加依赖
- 使用
- 将字符串转换为list
- 移除数据
- 移除全部数据
sp介绍
是否第一次启动应用
是否同意隐私协议
初始化sp
class spDemoActivity : AppCompactActivity{
private lateinit var sp: SharedPreferences
// 在 onCreate 里面初始化
override fun onCreate(saveInstanceState:BUndle?){
// 其他自动生成的代码
sp getSharedPerferences(“sp_demo”,MODE_PRIVATE)
}
}
存储
val editor = sp.edit()
editor.putString(“name”,“zhangsan”)
editor.putInt(“age”,18)
editor.apply()
读取数据
val name = sp.getString(“name”,“defaultValue”)
val age = sp.getIn(“age”,0)
自动apply
sp.edit{
editor.putString(“name”,“zhangsan”)
editor.putInt(“age”,18)
}
存储复杂数据类型
gson 添加依赖
在 build.gradle.kts app 级别里面
implementtation(“com.google.code.gson:gson:2.12.1”)
使用
Gson().toJson(Person(“zhangsan”,18))
Gson().fromJson(str,Person::class.java)
将字符串转换为list
val list = listOf(
Person(),
Person(),
Person()
)
sp.edit{
putString(“personList”,Gson().toJson(list))
}
val str = sp.getString("personList)
val list = Gson().fromJson(str,Array::class.java).toList()
移除数据
sp.edt{
remove(“name”)
}
移除全部数据
sp.edt{
clear()
}