博客
关于我
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/

    你可能感兴趣的文章
    pip 无法从 requirements.txt 安装软件包
    查看>>
    pip/pip3更换国内源
    查看>>
    pip3 install PyQt5 --user 失败
    查看>>
    pip3命令全解析:Python3包管理工具的详细使用指南
    查看>>
    pip3安装命令重复创建文件‘/tmp/pip-install-xxxxx/package‘失败
    查看>>
    PIPE 接口信号列表
    查看>>
    pipeline配置与管理Job企业级实战
    查看>>
    pipeline项目配置实战
    查看>>
    Pipenv 与 Conda?
    查看>>
    QVGA/HVGA/WVGA/FWVGA分辨率屏含义及大小//Android虚拟机分辨率
    查看>>
    pipreqs : 无法将“pipreqs”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径 正确,然后再试一次。
    查看>>
    pipy国内镜像的网址
    查看>>
    quiver绘制python语言
    查看>>
    pip下载缓慢
    查看>>
    PIP使用SSH从BitBucket安装自定义软件包,无需输入SSH密码
    查看>>
    pip命令提示unknow or unsupported command install解决方法
    查看>>
    pip在安装模块时提示Read timed out
    查看>>
    pip更换源
    查看>>
    SpringBoot之Banner源码深度分解
    查看>>
    Pix2Pix如何工作?
    查看>>