我希望从该应用程序的用户那里获取电子邮件,并将其与我的Room数据库进行比较。
我的房间遵循Dao-> Database-> Repository-> ViewModel模式。
我正在GeneralPreferenceFragment中工作,并放入了EditTextPreference。
我应该使用ViewModelProviders.of(...)还是仅创建存储库的实例?我试图使用ViewModelProviders.of(this).get(ViewModel.class),但无法编译。我需要对SettingActivity做些特别的事情吗?
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public static class GeneralPreferenceFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.pref_general);
setHasOptionsMenu(true);
// Bind the summaries of EditText/List/Dialog/Ringtone preferences
// to their values. When their values change, their summaries are
// updated to reflect the new value, per the Android Design
// guidelines.
bindPreferenceSummaryToValue(findPreference("user_email_address"));
bindPreferenceSummaryToValue(findPreference("user_password"));
Preference email = findPreference("user_email_address");
if (email == null){
} else {
checkEmailAgainstDatabase(email);
}
}
private void checkEmailAgainstDatabase(Preference email) {
String getEmail = email.toString();
//Get a call to the database