I actually have an issue and i’ll try to explain myself:
When users login and boolean “active user” is true, users go to their dashboard.
When users login and boolean “active user” is false, users go to a screen which says that their account is been deactivated and have a button to go to the login screen.
THE ISSUE: As an non active user press “back to login” if the arrow or finger slide from android “back action” being used 2 times, they are able to go to a “ghost dashboard” where is not related to any user but some functions of the app are enable ie, create a ticket.
The ticket is going anywhere because nobody will receive a ticket without user but it being registered in the Adalo Collection.
I know that is as easy as erase/change the button in the non active user screen but i want to know if anybody got that issue or if there is a way better to fix my worlflow.
@JareRamirez could you please elaborate - how “dashboard” screen gets into the route stack?
There is something missing in your explanation - as you explain when a user “fresh opens” the app, logs in, and gets to “inactive” screen, there is no dashboard screen in this flow.
"It’s a kind of magic… "
That’s why i am asking here
SCREEN FLOW
(if active user) Dashboard
Login > Interim >
(if non active) Deactivated User Screen
There was a button with 2 actions: Log Out and Link to Login screen, and a text which says the name of the user and who deactivate the account.
After pressing the button, here is the phantom flow:
Being at Login Screen, (first pressing “back”) goes to Deactivated User Screen, which do not show any name in to the text block.
(Second pressing “back”) Goes to the phantom Dashboard.
It has some kind of logic because the second step back is the Interim screen and as an “user not logged in” Interim send it to the Dashboard because can not check the boolean true/false of the Active User.
That’s what I think but in my opinión is a big leak of security.
@JareRamirez something is missing from the picture here.
If the Dashboard screen was not visited before, then it can not be in the route stack. So no matter how many times a user presses “back”, there is no way it can get to this screen.
Also, usually redirect actions are put “on-screen-enter” flow. When the screen is generated for the first time, these actions are run, and they are not executed again when a user leaves the screen and goes back to it.
Without looking at the app, screenshots, screen recordings the only guess I have is that redirection is done with a timer - is this correct?