博客
关于我
kotlin的SharedPreferences的工具类
阅读量:761 次
发布时间:2019-03-23

本文共 1509 字,大约阅读时间需要 5 分钟。

class SharedPreferencesUtil {    private constructor(context: Context) {        init {            // 初始化预设偏好文件            mPreferences = context.getSharedPreferences(mTAG, Context.MODE_PRIVATE)            mEditor = mPreferences.edit()        }    }    // 存入字符串数据    fun putSP(key: String, value: String) {        mEditor.putString(key, value)        mEditor.commit()    }    // 获取字符串数据    fun getSP(key: String): String? {        return mPreferences.getString(key, "")    }    // 移除特定键的数据    fun removeSP(key: String) {        mEditor.remove(key)        mEditor.commit()    }    companion object {        val mTAG = "test"        // 实例化单例工具        private val mSharedPreferencesUtil: SharedPreferencesUtil = SharedPreferencesUtil(ApplicationContext...)        // 获取预设偏好文件实例        fun getSPInstance(context: Context): SharedPreferencesUtil {            return mSharedPreferencesUtil        }    }}

SharedPreferencesUtil简要说明

SharedPreferencesUtil 是一个用于简化 SharedPreferences 操作的工具类,支持以下功能:

  • 存储字符串数据:通过 putSP 方法,可以方便地将任意字符串数据存储到 SharedPreferences 中。
  • 获取字符串数据:使用 getSP 方法可以无缝获取指定键对应的字符串值,默认返回空字符串。
  • 移除数据:调用 removeSP 方法可快速移除指定键的数据项。
  • 使用示例

    // 初始化工具类val spUtil = SharedPreferencesUtil.getSPInstance(context)// 孀值数据spUtil.putSP("USERNAME", "admin")spUtil.putSP("PASSWORD", "secret")// 获取数据val userName = spUtil.getSP("USERNAME")

    注意事项

  • 上下文是必需的:请确保在获取实例时传递有效的上下文。
  • 单例模式优化:本工具采用单例模式,确保内存占用最低。
  • 默认值处理:默认值使用空字符串,这可以根据实际需求进行调整。
  • 这个类的优势

    • 简化操作:通过工具类代替直接处理 Editor,减少 boilerplate code。
    • 高效管理:采用单例模式,避免多次初始化带来的开销。
    • 扩展性强:可以根据需求添加其他数据类型的存取方法。

    转载地址:http://chvzk.baihongyu.com/

    你可能感兴趣的文章
    Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime(72)
    查看>>
    Node 裁切图片的方法
    查看>>
    node+express+mysql 实现登陆注册
    查看>>
    Node+Express连接mysql实现增删改查
    查看>>
    node, nvm, npm,pnpm,以前简单的前端环境为什么越来越复杂
    查看>>
    Node-RED中Button按钮组件和TextInput文字输入组件的使用
    查看>>
    vue3+Ts 项目打包时报错 ‘reactive‘is declared but its value is never read.及解决方法
    查看>>
    Node-RED中Slider滑杆和Numeric数值输入组件的使用
    查看>>
    Node-RED中Switch开关和Dropdown选择组件的使用
    查看>>
    Node-RED中使用exec节点实现调用外部exe程序
    查看>>
    Node-RED中使用function函式节点实现数值计算(相加计算)
    查看>>
    Node-RED中使用html节点爬取HTML网页资料之爬取Node-RED的最新版本
    查看>>
    Node-RED中使用JSON数据建立web网站
    查看>>
    Node-RED中使用json节点解析JSON数据
    查看>>
    Node-RED中使用node-random节点来实现随机数在折线图中显示
    查看>>
    Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
    查看>>
    Node-RED中使用node-red-contrib-image-output节点实现图片预览
    查看>>
    Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
    查看>>
    Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
    查看>>