Android之MMKV介紹

MMKV

MMKV——基於 mmap 的高性能通用 key-value 組件,底層序列化/反序列化使用 protobuf 實現,性能高,穩定性強。

從 2015 年中至今,在 iOS 微信上使用已有近 3 年,其性能和穩定性經過了時間的驗證。
近期已移植到 Android 平臺。在騰訊內部開源半年之後,得到公司內部團隊的廣泛應用和一致好評。

通過 mmap 內存映射文件,提供一段可供隨時寫入的內存塊,App 只管往裏面寫數據,
由操作系統負責將內存回寫到文件,不必擔心 crash 導致數據丟失。

快速上手

添加依賴:

dependencies {
    implementation 'com.tencent:mmkv:1.0.23'
    // replace "1.0.23" with any available version
}

在 App 啓動時初始化 MMKV,設定 MMKV 的根目錄
(默認/data/data/xxx/files/mmkv/)
(sp存儲在/data/data/xxx/shared_prefs)
初始化方式:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    String rootDir = MMKV.initialize(this);
    System.out.println("mmkv root: " + rootDir);
    //……
}

所有變更立馬生效,無需調用 sync、apply。

MMKV 會提供一個全局的實例,使用實例:

import com.tencent.mmkv.MMKV;
//……

MMKV kv = MMKV.defaultMMKV();

kv.encode("bool", true);
boolean bValue = kv.decodeBool("bool");

kv.encode("int", Integer.MIN_VALUE);
int iValue = kv.decodeInt("int");

kv.encode("string", "Hello from mmkv");
String str = kv.decodeString("string");
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章