我想将用户首选项而不是典型的sharedPreferences存储在Firebase实时数据库中。
作为示例,我的用户应指定itemId以便访问数据库的这一部分:
items
itemId
members
uid: true
因此,当用户填写itemId时,我需要检查该itemId是否存在于数据库中并显示错误消息,要求用户填写另一个itemId。
我设想使用标准的“首选项”屏幕,并至少关联一个自定义PreferenceDataStore来处理itemId。
阅读文档时,我需要重写getString / putString方法:
public class DataStore extends PreferenceDataStore {
@Override
public void putString(String key, @Nullable String value) {
// Save the value somewhere
}
@Override
@Nullable
public String getString(String key, @Nullable String defValue) {
// Retrieve the value
}
}
最后,我需要异步管理它以便查询数据库并获得一些结果。
所以我想知道使用PreferenceDataStore是否是一种好方法……我的最初想法是避免开发Androidx Preference库中已经存在的设置屏幕。
谢谢您的帮助!