Пропустить экран входа, если пользователь уже вошел в систему - PullRequest
0 голосов
/ 31 мая 2019

Я использую firebase для аутентификации моего пользователя. Я создал некоторые действия и у меня есть экран входа в систему, который я хочу показать, если пользователь еще не вошел в систему. Я определил большинство действий в манифесте по умолчанию, а действия на экране входа в систему как основные. Я делаю это правильно? Какой из экранов должен быть определен в манифесте как основной? Экран входа в систему или экран с большинством информации (справа основной)?

Ответы [ 2 ]

0 голосов
/ 31 мая 2019

я думаю, что вы должны использовать заставку в качестве основного, обычно он используется для отображения некоторого прогресса до полной установки приложения

public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
    // User is signed in
    // Start home activity
    startActivity(new Intent(SplashActivity.this, HomeActivity.class));
    } else {
    // No user is signed in
    // start login activity
    startActivity(new Intent(SplashActivity.this, loginActivity.class));
    }

    // close splash activity
    finish();
 }
}

и знать, если пользователь уже вошел в систему, как указано в официальной документации :

Рекомендованный способ получить текущего пользователя - вызвать метод getCurrentUser. Если ни один пользователь не вошел в систему, getCurrentUser возвращает null

FirebaseAuth.getInstance().getCurrentUser()

Должен возвращать ноль, если пользователь не вошел в систему.

0 голосов
/ 31 мая 2019

Определите ваш главный экран по умолчанию. Убедитесь, что ваш запрос, если пользователь вошел в систему, прежде чем запрашивать данные, которые могут привести к сбою из-за того, что пользователь не вошел в систему. Причина в этом случае в большинстве сценариев, пользователи войдут в систему, и вы не хотите выполнять два действия каждый раз, когда запускается ваше приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...