我使用jetpack数据存储已经有一段时间了,但后来我遇到了问题。 我想在应用程序被销毁时清除数据存储中的数据。 我使用 jetpack 数据存储仅以表单形式保存数据
我搜索到sharedPreferences有一个clear()函数,Jetpack Datastore有类似的函数吗?我该如何使用它?
我发现了明确的功能 数据存储文档但没有解释如何使用它
用这个
dataStore.edit {
it.clear()
}
方法描述说明
从此 MutablePreferences 中删除所有首选项。
对于原型数据存储(感谢 Amir Raza 的评论)
datastore.updateData {
it.toBuilder().clear().build()
}
如果有人想知道如何删除特定偏好
context.dataStore.edit {
it.remove(key)
}
尝试这个(对于 Proto DataStore):
dataStore.updateData { obj ->
obj.toBuilder()
.clear()
.build()
}
如果您想删除特定键,请尝试此操作
dataStore.edit {
if (it.contains(key)) {
it.remove(key)
}
}
对于 Proto DataStore,您可以执行以下操作:
dataStore.updateData { it.getDefaultInstance() }
它不会删除文件,但实际上是一样的。