Какое activity запускать первым при разработке приложения с авторизацией?

Всем добрый день.

Разрабатываю приложение с авторизацией. И по-моему, мой метод похож на костыль и неправильный подход, поэтому хотелось бы услышать совет бывалых.

На текущий момент, алгоритм работы программы следующая: главное активити - MainActivity. При запуске приложения запускается MainActivity и проверяет, есть ли в SharedPref токен, если токен есть, гуд, продолжаем работать в MainActivity, если токена нет, то запускаем LoginActivity, для авторизации пользователя. Если пользователь авторизовался успешно, то заново запускаем MainActivity. Так как главная активность запускается по несколько раз, то конечно несколько раз срабатывают методы жизненного цикла, что очень неудобно.

Вопрос: а как правильно это организовать? Какое активити сделать главным? Или есть какие-то механизмы, который может до запуска активити проверять наличие токена? В гугле не получается правильно задать вопрос. Заранее спасибо.
  • Вопрос задан
  • 190 просмотров
Решения вопроса 1
@kazsat Автор вопроса
В общем сам нашел решение:

Создаем активити с темой Theme.NoDisplay и делаем его лаунчером. В этом активити прописываем код:
Intent intent;

        if (!isExistToken()) {
            intent = new Intent(this, LoginActivity.class);
        } else {
            intent = new Intent(this, MainActivity.class);
        }

        startActivity(intent);
        finish();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SoftAge Новосибирск
До 200 000 ₽
Drum Pads 24 Ульяновск
от 90 000 до 160 000 ₽
SoftAge Новосибирск
До 150 000 ₽