如标题所述,有没有办法获取Android Jetpack中存储的所有 key Preferences DataStore ,例如,dataStore
val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "settings")
最佳答案
获取所有 key
suspend fun Context.readAllKeys(): Set<Preferences.Key<*>>? {
val keys = dataStore.data
.map {
it.asMap().keys
}
return keys.firstOrNull()
}
通过其关键来获取值(value)
suspend fun Context.getValueByKey(key: Preferences.Key<*>): Any? {
val value = dataStore.data
.map {
it[key]
}
return value.firstOrNull()
}
关于android - 如何获取Android Preferences DataStore的所有键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72097644/