Завершите несколько действий на аутентификации потока Android - PullRequest
0 голосов
/ 11 июля 2019

Итак, у меня есть приложение с аутентификацией вот поток:

LoginPage -> Зарегистрироваться -> RegisterConfirmation -> Код OTP -> EmailVerification -> Домашняя страница

Я хочу, чтобы, если пользователь уже получил код OTP или подтверждение по электронной почте и нажал кнопку «Назад», пользователь сразу перешел на домашнюю страницу, поскольку он уже получил AccessToken с момента регистрации RegisterConfirmation.

Вот поток, на который я хочу выглядеть: flow

Как я могу это сделать, я уже провел некоторые исследования, но все, что я получил, это только как закончить только одно действие (родитель)?

Ответы [ 2 ]

1 голос
/ 11 июля 2019

Не позволяйте пользователю перейти к OTP-коду и проверить действия подтверждения реестра, если пользователь уже получил свой токен.

Если вы попытаетесь начать задание, скажем, A, и вы в текущем занятии, скажем, D, вы можете использовать это с вашим намерением:

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)

Чтобы очистить топ деятельности (B, C, D)

РЕДАКТИРОВАТЬ:

Вы можете сохранить текущий экземпляр вашей активности, используя

intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
0 голосов
/ 11 июля 2019

Когда пользователь нажимает кнопку «Назад», выполните описанный ниже метод onBackPressed(). Это может решить вашу проблему. Что он делает, это очищает предыдущую задачу и создает новую задачу
с единственной активностью в стеке.

val intent = Intent(this,HomeActivity::class.java).apply{
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK)
}
startActivity(intent)
finish()
...