Kotlin安卓页面本地存储数据(方法和封装)

Posted rion1234567

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kotlin安卓页面本地存储数据(方法和封装)相关的知识,希望对你有一定的参考价值。

直接上代码

封装:

 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什么类型的都能存

以上是关于Kotlin安卓页面本地存储数据(方法和封装)的主要内容,如果未能解决你的问题,请参考以下文章

Vue的Vue-ls 封装的本地存储的方法

vuex本地存储

Kotlin之框架模式MVP总结和测试代码

本地存储localStorage以及它的封装接口store.js的使用

H5 localstorage本地缓存数据的封装以及在vue中的使用

安卓图片保存到本地和裁剪