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