【Compose Multiplatform】ローカル永続ストレージをDataStoreで実装する方法

はじめに

純粋なAndroidプロジェクトでは
ネイティブのDataStoreを直接使用できますが
Compose Multiplatformプロジェクトでは
どのようにDataStoreをシームレスに使い続けることができるでしょうか?
本記事では、クロスプラットフォーム環境で
DataStoreによるローカルストレージの実装方法を紹介します

実装手順
1. ライブラリのインポート

.tomlファイルに追加:

build.gradle.ktsに追加:

2. 各プラットフォーム向けDataStoreの実装

expect関数とローカルストレージ名の作成:

Androidプラットフォームの実装:

iOSプラットフォームの実装:

3. commonMainでDataStoreを使用する

上記で実装したインターフェースを使用して commonMainでDataStoreを使用できます:

4. Koinモジュールの追加(オプション)

依存性注入にKoinを使用したい場合は、次のように設定できます:

まとめ
  • Compose Multiplatformでは、クロスプラットフォームプロジェクトでDataStoreを使用できます
  • 適切なカプセル化により、異なるプラットフォーム間で統一されたDataStore APIを使用できます
  • DataStoreを使用することで、ローカルデータの永続化の実装が簡素化されます
  • Koinなどの依存性注入フレームワークと組み合わせることで、DataStoreインスタンスをより適切に管理できます
参考資料

Android Developer 公式

You might also enjoy