#android #firebase
#Android #firebase
Вопрос:
Итак, я работаю над приложением для Android, в котором пользователь должен войти в систему со своим именем пользователя и паролем, а затем Firebase покажет пользователям, которые находятся в Сети после того, как они вошли в систему. Чтобы избавить пользователя от необходимости постоянно входить в систему, я установил флажок запоминать меня, используя SharedPreferences. Это позволяет пользователям автоматически или быстро входить в систему после открытия приложения без повторного ввода имени пользователя и пароля, экономя их время и разочарования.
Автоматический вход с использованием флажка «Запомнить меня» с SharedPreferences работает нормально, но когда пользователь входит в систему без экрана входа, то есть когда запускается функция «Запомнить меня», данные не отправляются в Firebase, и пользователи не отображаются как доступные или онлайн, когда они фактически находятся в приложении.
Первым решением было бы реализовать метод, при котором, когда пользователь автоматически входит в систему (из-за запоминания меня), приложение связывается с Firebase и показывает, что пользователь подключен к Сети. Это более предпочтительно, поэтому, если кто-нибудь может, пожалуйста, помогите мне с этим.
Другой способ заключается в сохранении / отображении ранее введенных имени пользователя и пароля в соответствующих полях EditText, поэтому пользователю просто нужно нажать кнопку входа. Я полагаю, что при таком методе потребуется наименьшее количество кодирования по сравнению с первым решением. Как только пользователь войдет в систему с экрана входа, информация будет передана Firebase и покажет пользователя как доступного / онлайн.
Я много искал, как реализовать второе решение, то есть показать ранее введенные имя пользователя и пароль, но безуспешно. Поиск по ключевым словам «показать ранее введенный текст редактирования имени пользователя Android Studio», но не получил соответствующих результатов Google и Youtube.
Пожалуйста, помогите мне, ребята.
Комментарии:
1. Перейдите по этой ссылке — androidhive.info/2012/08 / …
Ответ №1:
Наконец …. получил решение, и я доволен автозаполнением или вторым решением. В полях EditText отображаются ранее введенные имя пользователя и пароль, поэтому пользователю просто нужно нажать login. Учетные данные сохраняются, только если установлен флажок запомнить меня.
Вот простой код, который вернул мне дыхание:
sharedPreferences = getSharedPreferences(myPreference, Context.MODE_PRIVATE);
if (sharedPreferences.contains(Username)) {
DriverEmail.setText(sharedPreferences.getString(Username, ""));
}
if (sharedPreferences.contains(Password)) {
DriverPassword.setText(sharedPreferences.getString(Password, ""));
}