高性能MMKV数据交互分析-MMKV初始化

  • A+
所属分类:Android开发

什么是MMKV?

MMKV 是基于 mmap 内存映射的移动端通用 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。

https://github.com/Tencent/MMKV

为什么要替代SharedPreferences?

首先 安全性好。 SP实际上是把键值对放到本地文件中进行存储。如果要保证数据安全需要自己加密。

其次 读写速度更快。 MMKV是放在内存里面,通过Ashmem 匿名共享内存实现,读取和写入更方便。

第三 支持多线程访问。由于实现机制是放在匿名共享内存,你不需要关注内存释放之后的回写和读取。对于多线程支持更好。

第四 效率更高。MMKV 使用protobuf进行序列化和反序列化,比起SP的xml存放方式,更加高效。

最重要的是 MMKV支持从 SP里面进行迁移。

以上这些优点 基本可以作为一个程序员对于代码 “简洁、高效、安全、友好、扩展性好”的追求。 所以以后你还用SP吗?

1.依赖注入

    
}

2.在Application中进行初始化

MMKV.initialize();

3.直接使用

=, = kv.decodeBool( iValue = https://www.cnblogs.com/ganchuanpu/p/kv.decodeInt(, = kv.decodeString();

 4. 分开使用多个MMKV实例例

MMKV* mmkv = MMKV.mmkvWithID(, );

5. 多进程模式

MMKV* mmkv = MMKV.mmkvWithID(, );

 

转载自:https://www.cnblogs.com/ganchuanpu/p/12725662.html

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: