直接上代码

封装:

 1 //存储key对应的数据
 2 fun saveData(context: Activity, key: String, info: String) {
 3     val sharedPreferences = context.getSharedPreferences(key, MODE_PRIVATE)
 4     val editor = sharedPreferences.edit()
 5     editor.putString(key, info)
 6     editor.apply()
 7 }
 8 
 9 //取key对应的数据
10 fun getData(context: Activity, key: String): String {
11     val result = context.getSharedPreferences(key, MODE_PRIVATE).getString(key, "")
12     return if (result.isEmpty()) {
13         ""
14     } else {
15         result
16     }
17 }
18 
19 //清空缓存对应key的数据
20 fun clearData(context: Activity, key: String) {
21     context.getSharedPreferences(key, MODE_PRIVATE).edit().clear().apply()
22 }

这里第一个参数传入Context,方便在各个activity/fragment里调用

 

调用:

1 //存数据
2 saveData(this@LoginActivity, "phone", _phone)
3 
4 //取数据
5 getData(this, "phone")
6 
7 //清除数据
8 clearData(activity!!,"phone")

 

ps:我这里都给转成String封装了,其实getSharedPreferences什么类型的都能存

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-07-29
  • 2022-12-23
  • 2021-11-23
  • 2021-09-21
  • 2022-12-23
  • 2021-04-03
猜你喜欢
  • 2022-12-23
  • 2021-04-10
  • 2021-10-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-07
相关资源
相似解决方案