Preferences DataStore は、DataStore 内のデータをトランザクション的に更新する edit() 関数を提供します。たとえば、この関数の変換パラメーターは、必要に応じて値を更新できるコード ブロックを受け入れます。
suspend fun incrementCounter() {
context.dataStore.edit { settings ->
val currentCounterValue = settings[EXAMPLE_COUNTER] ?: 0
settings[EXAMPLE_COUNTER] = currentCounterValue + 1
// can we track success here? i am afraid code might execute asynchronously
}
データストアへの書き込みがいつ成功したかを追跡したいと思います。トラッキング コードはどこに配置すればよいですか?