Android 使用腾讯mmkv数据持久化技术

本文档介绍了如何在Android中使用腾讯的MMKV存储框架来替代SharedPreferences进行数据持久化。通过创建一个TencentMmkvUtil工具类,并结合单例模式,实现了对各种类型数据(如String、boolean、int、long、float等)的存取、删除及清空功能。示例代码展示了具体的使用方法。

在安卓中可以使用SharedPreferences作为数据持久化的工具,它可以存储键值对形式的数据,本文章将介绍腾讯开源框架MMKV存储的使用,mmkv大体的使用方式与SharedPreferences相似。mmkv存储作为常用的一种组件,可以将mmkv封装成一个TencentMmkvUtil工具类,在结合单例模式,实现数据的快速存储,下面是一整个TencentMmkvUtil工具类的代码,工具类提供各种类型数据的保存和读取方法,还提供删除指定键值的方法和清楚所有数据的方法。

/**
 * TencentMmkvUtil
 * Create on 20220115 by dyj
 */
public class TencentMmkvUtil {
    /**
     * 默认的权重比
     **/
    public static final float DEFAULT_WEIGHT = 0.667f;

    private MMKV mmkv;

    private TencentMmkvUtil() {
        mmkv = MMKV.defaultMMKV();
    }

    public static TencentMmkvUtil newInstance() {
        return SingletonHolder.sInstance;
    }

    //静态内部类
    private static class SingletonHolder {
        private static final TencentMmkvUtil sInstance = new TencentMmkvUtil();
    }

    /**
     * 添加String类型的数据到shared里面保存
     *
     * @param key   键
     * @param value 值
     */
    public void setString(String key, String value) {
        if (!isEmpty(key, value)) {
            if (null == mmkv) {
                mmkv = MMKV.defaultMMKV();
            }
            assert mmkv != null;
            mmkv.encode(key, value);
        }
    }

    /**
     * 获取string类型的数据
     *
     * @param key 键
     * @return 返回值,如果shared里面没有这个值则返回null
     */
    public String getString(String key) {
        if (null == key) {
            return null;
        }
        if (null == mmkv) {
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值