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

    你可能感兴趣的文章
    MySQL DBA 进阶知识详解
    查看>>
    Mura CMS processAsyncObject SQL注入漏洞复现(CVE-2024-32640)
    查看>>
    Mysql DBA 高级运维学习之路-DQL语句之select知识讲解
    查看>>
    mysql deadlock found when trying to get lock暴力解决
    查看>>
    MuseTalk如何生成高质量视频(使用技巧)
    查看>>
    mutiplemap 总结
    查看>>
    MySQL DELETE 表别名问题
    查看>>
    MySQL Error Handling in Stored Procedures---转载
    查看>>
    MVC 区域功能
    查看>>
    MySQL FEDERATED 提示
    查看>>
    mysql generic安装_MySQL 5.6 Generic Binary安装与配置_MySQL
    查看>>
    Mysql group by
    查看>>
    MySQL I 有福啦,窗口函数大大提高了取数的效率!
    查看>>
    mysql id自动增长 初始值 Mysql重置auto_increment初始值
    查看>>
    MySQL in 太多过慢的 3 种解决方案
    查看>>
    MySQL InnoDB 三大文件日志,看完秒懂
    查看>>
    Mysql InnoDB 数据更新导致锁表
    查看>>
    Mysql Innodb 锁机制
    查看>>
    MySQL InnoDB中意向锁的作用及原理探
    查看>>
    MySQL InnoDB事务隔离级别与锁机制深入解析
    查看>>