MMKV基本使用

本文介绍如何在Android应用程序中使用MMKV进行数据存储。首先,在应用创建时通过BaseApplication类初始化MMKV。接着,演示了如何创建MMKV实例,包括使用默认实例和自定义实例。最后,详细说明了数据的增删改查操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先在app创建时初始化:

public class BaseApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        MMKV.initialize(this); //初始化mmkv
    }
}

然后创建MMKV:

//使用默认的实例
MMKV mmkv1 = MMKV.defaultMMKV();
//创建自己的实例  参数1:库的key, 参数2:库的模式(多进程或单进程)
MMKV mmkv2 = MMKV.mmkvWithID("user", MMKV.MULTI_PROCESS_MODE);

增删改查:

// 增
mmkv.encode("token", token);
// 删
mmkv.removeValueForKey("token");  //删除单个
mmkv.removeValuesForKeys(new String[]{"name", "token"}); //删除多个
//改 (在执行一次增操作)
mmkv.encode("token", token);
//查
mmkv.decodeString("token"); 
### 安卓平台上 MMKV使用指南 #### 初始化 MMKV 在 Android 平台上,MMKV 是腾讯开源的一款高效键值存储框架。为了使用 MMKV,首先需要在其初始化阶段设置根目录。通常情况下,可以在 `MainActivity` 中完成这一操作[^1]: ```java import com.tencent.mmkv.MMKV; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 设置 MMKV 根目录 String rootDir = getFilesDir().getAbsolutePath() + "/mmkv"; MMKV.initialize(rootDir); } } ``` #### 数据存取基本方法 一旦完成了初始化工作,就可以通过简单的 API 来实现数据的读写功能。值得注意的是,MMKV 所有的变更会立即生效,因此不需要显式调用同步函数如 `sync()` 或者 `apply()`。 以下是几个常见的数据存取示例代码片段[^1]: ```java // 获取默认实例 MMKV mmkv = MMKV.defaultMMKV(); // 存储字符串 mmkv.encode("key_string", "value"); // 存储整数 mmkv.encode("key_int", 123); // 取出字符串 String valueStr = mmkv.decodeString("key_string", ""); // 取出整数,默认值为0 int valueInt = mmkv.decodeInt("key_int", 0); ``` #### 跨进程支持 如果应用程序涉及多个进程间的通信需求,则可以利用 MMKV 提供的多进程版本。这使得即使是在复杂的架构下也能保持高效的共享状态管理能力[^3]。 要启用跨进程模式,只需创建一个多进程安全实例即可: ```java // 创建一个名为multiProcessID的支持跨进程的MMKV对象 MMKV multiProcessMmkv = MMKV.mmkvWithID("multiProcessID", MMKV.MULTI_PROCESS_MODE, null); ``` #### React Native 集成 (可选) 对于那些正在构建基于 React Native 的项目来说,也有专门针对此环境优化过的插件——react-native-mmkv 。它允许前端开发者同样享受到原生层面上高性能持久化解决方案所带来的便利之处[^2]。 安装方式如下所示(以npm为例): ```bash npm install react-native-mmkv --save npx pod-install ios # 如果有iOS端的话也需要执行这一步骤 ``` 随后按照官方文档指导完成必要的链接步骤之后便能够在JS层面无缝调用了。 --- 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值