Android Jetpack DataStore

179 Views Asked by At

I want use Jetpack DataStore in my app and according to setup instruction in: https://developer.android.com/topic/libraries/architecture/datastore I have added the following to my build.gradle.kts(:app)

dependencies {
        implementation("androidx.datastore:datastore-preferences:1.0.0")
}

then to store key-value pairs I have added this line at the top level of my kotlin file: val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "settings")

but on this step after import android.content.Context to my kotlin file, I have Unresolved reference: dataStore error and Property "dataStore" is never used warning

1

There are 1 best solutions below

1
Waseem Abbas On

You should have the following two dependencies in your app:build.gradle.kts

implementation "androidx.datastore:datastore:$data_store_version"
implementation "androidx.datastore:datastore-preferences:$data_store_version"

Then at least following imports in your Kotlin file:

import android.content.Context
import androidx.datastore.core.DataStore
import androidx.datastore.preferences.preferencesDataStore

private val Context.dataStore: DataStore<androidx.datastore.preferences.core.Preferences> by preferencesDataStore(
        name = "PREFERENCES_NAME"
    )