我有一个问题,安卓datastore
.我不知道我不能写或我不能读,但它不工作的任何方式这里是我的代码:
class DataStoreProvider(private val context: Context) {
private val Context.dataStore: DataStore<Preferences> by
preferencesDataStore("settings")
private val phoneNumberKey = stringPreferencesKey("phoneNumberPreferencesKey")
private val passwordKey = stringPreferencesKey("passwordPreferencesKey")
fun readPhoneNumber(): String? {
var phoneNumber: String? = null
context.dataStore.data
.map { preferences ->
phoneNumber = preferences[phoneNumberKey]
}
return phoneNumber
}
suspend fun savePhoneNumber(phoneNumber: String) {
context.dataStore.edit { setting ->
setting[phoneNumberKey] = phoneNumber
}
}
}
我从Dispatchers.IO
上的viewModelScope.launch
函数调用这些函数。
而且我使用1.0.0
版本的数据存储,你知道我该怎么做吗?
1条答案
按热度按时间ql3eal8s1#
如下所示重构您的
readPhoneNumber
: