JavaScriptまたはTypeScriptで、ネイティブUIとAPIを直接利用したiOS、Android、visionOSアプリを構築するフレームワーク。
Tencent/MMKV
mmapとprotobufを利用する、WeChat向けに開発されたモバイル・デスクトップアプリ用の高速で軽量なキー・バリュー型ストレージフレームワーク。
代替できる製品:SharedPreferences
- スター
- 18,771
- フォーク
- 1,998
- 未解決の Issue
- 2
- 最終コミット
- 3 日前
これは何?
MMKVは、WeChatアプリで使われているモバイル・デスクトップアプリ向けのキー・バリュー型ストレージフレームワークです。mmapを使ってメモリマップドファイルにデータを保持し、値をprotobufでエンコードします。書き込みは即座に保存されるため、sync、apply、saveを呼び出す必要はありません。
Android、iOS、macOS(Appleのバインディング経由でtvOS、watchOS、visionOSにも対応)、Windows、汎用POSIXシステム、HarmonyOS NEXTをサポートしています。また、AndroidとiOS向けのKotlin Multiplatformパッケージも試験的に提供されています。マルチプロセスアクセスに対応し、プロセス間で読み取り同士、読み取りと書き込みを並行して行えます。
プロジェクトはフットプリントの小ささを重視しています。READMEによると、バイナリサイズの増加分はAndroidでアーキテクチャごとに約50K、iOS/macOSで30K未満、POSIXで約7Kです。Flutter、Go、Python、Swift向けのバインディングも提供されています。
主な機能
- 01mmapでデータを保存し、値をprotobufでエンコードすることで、高速な読み書きを実現します。
- 02変更はすべて即座に保存されるため、syncやsaveの呼び出しは不要です。
- 03対応プラットフォームでのマルチプロセス並行アクセスをサポートします。
- 04プラットフォームに応じて、アーキテクチャごとのバイナリサイズ増加分は約7K〜50Kと軽量です。
- 05Android、iOS、macOS、Windows、POSIX、HarmonyOS NEXTに対応しています。
ユースケース
- AndroidやiOSアプリの設定や、小規模なキー・バリュー型の状態を永続化する。
- 同じアプリの複数プロセス間で保存した値を共有する。
- デスクトップや組み込み向けのPOSIXプログラムに、軽量なローカルストレージを追加する。
クイックスタート
- 1
Maven/Gradle 経由で Android ライブラリをインストールする
implementation 'com.tencent:mmkv:2.4.3' - 2
CocoaPods 経由で iOS/macOS ライブラリをインストールする
pod install - 3
OHPM 経由で HarmonyOS NEXT ライブラリをインストールする
ohpm install @tencent/mmkv - 4
Windows または POSIX 向けビルド用にソースコードをクローンする
git clone https://github.com/Tencent/MMKV.git
使う前に知っておきたいこと
- 公式サポート対象は Android、iOS/macOS、Windows、POSIX、HarmonyOS NEXT のみです。Kotlin Multiplatform のサポートは実験的です。
- v2.0.0 以降、Android の 32 ビットアーキテクチャおよび API レベル 21~22 はサポートされなくなりました。
- メタデータ上のライセンスは NOASSERTION と記載されていますが、README には BSD 3-Clause と記載されています。
収録されている特集
トピック
よくある質問
- MMKV とは?
- mmapとprotobufを利用する、WeChat向けに開発されたモバイル・デスクトップアプリ用の高速で軽量なキー・バリュー型ストレージフレームワーク。 MMKVは、WeChatアプリで使われているモバイル・デスクトップアプリ向けのキー・バリュー型ストレージフレームワークです。mmapを使ってメモリマップドファイルにデータを保持し、値をprotobufでエンコードします。書き込みは即座に保存されるため、sync、apply、saveを呼び出す必要はありません。
- MMKV は無料で使えますか?ライセンスは?
- MMKV は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- MMKV は今もメンテナンスされていますか?
- 活発にメンテナンス中。MMKV の最終コミットは 2026年11月4日 です。
- MMKV は何に使えますか?
- AndroidやiOSアプリの設定や、小規模なキー・バリュー型の状態を永続化する。 同じアプリの複数プロセス間で保存した値を共有する。 デスクトップや組み込み向けのPOSIXプログラムに、軽量なローカルストレージを追加する。
- MMKV のインストール方法は?
- Maven/Gradle 経由で Android ライブラリをインストールする: implementation 'com.tencent:mmkv:2.4.3' CocoaPods 経由で iOS/macOS ライブラリをインストールする: pod install OHPM 経由で HarmonyOS NEXT ライブラリをインストールする: ohpm install @tencent/mmkv Windows または POSIX 向けビルド用にソースコードをクローンする: git clone https://github.com/Tencent/MMKV.git
- MMKV はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/Tencent/MMKV
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
FlutterベースのUIでWeb・デスクトップ・モバイルアプリを開発できる、フロントエンドの知識が不要なPythonフレームワーク。
Android、iOS、ミニプログラム、Flutter、Web向けのアプリ内デバッグ・効率化ツールキット。パフォーマンス監視、モックデータ、ビジュアル検査パネルを備えています。
モバイル、デスクトップ、Webアプリ向けのオープンソースでプライバシー重視の分析ツール。FirebaseやGoogle Analyticsの代替として利用できます。
Googleが提供する、単一のDartコードベースからネイティブコンパイルされたモバイル、Web、デスクトップアプリを構築するためのオープンソースSDK。
Reactを使って、JavaScriptのUIをネイティブのプラットフォームコンポーネントで描画するAndroid・iOSアプリを構築するフレームワーク。