Skip to content

Instantly share code, notes, and snippets.

@agustarc
Created December 27, 2021 10:16
Show Gist options
  • Save agustarc/6b84547d98141900fa078d5dea282f1e to your computer and use it in GitHub Desktop.
Save agustarc/6b84547d98141900fa078d5dea282f1e to your computer and use it in GitHub Desktop.
val EXAMPLE_COUNTER = intPreferencesKey("example_counter")
val exampleCounterFlow: Flow<Int> = context.dataStore.data
.map { preferences ->
// No type safety.
preferences[EXAMPLE_COUNTER] ?: 0
}
suspend fun incrementCounter() {
context.dataStore.edit { settings ->
val currentCounterValue = settings[EXAMPLE_COUNTER] ?: 0
settings[EXAMPLE_COUNTER] = currentCounterValue + 1
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment