@RomanGorbatko
PHP, Python, NodeJS, Swift

Какой правильный механизм представления контроллера?

Предисловие:
Я — web-разработчик который пытается разобраться в разработке под iOS.

Проблема:
При загрузке приложения, сервис аунтентификации должен проверять наличие токена авторизации, и в зависимости от результата (существует токен или нет) редиректить на нужный контроллер:
1. В случае если пользователь не залогинен — показывать экран логина;
2. Если пользователь имеет токен — показывать экран профиля;

Вопрос:
Какой самый эффективный механизм решения данной проблемы?

На мой взгляд механизм должен быть следующий:
MainCotroller, который является NavigationView, при загрузке опрашивается сервис и в зависимости от результата пушит нужный контроллер.

Этот вариант кажется самым очевидным и правильным. Но т.к. я не имею достаточного опыта в разработке мобильных приложений, и не знаю best practices, могу ошибаться.

Прошу сообщество помочь мне в решении данной проблемы.

Спасибо!
  • Вопрос задан
  • 220 просмотров
Пригласить эксперта
Ответы на вопрос 1
briahas
@briahas
ObjC, Swift, Python
1) Некий контроллер (не NavigationController), пусть будет AuthController, запускается из AppDelegate и обрабатывает логику связанную с токеном.
2) Далее, в AppDelegate, по запросу (isLoggedIn или isTokenAvailable, как вам удобно) к объекту класса AuthController после его инициализации, получаете true или false
3) В зависимости от ответа в п.2 вы пушите в NavigationController либо ЛогинВьюКонтроллер либо HomeViewController
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы