once the user is logged in you should remember its state in starterservice.
When the app restarts at main you can check the state and, if already logged in, skip the loginscreen.
Sounds like the way Android works. I don´t see anything problematic in your description.
@DonManfred, The problem is that if my user is inserting data or performing a multi-step task, and the phone rings, his data are lost...
I already have my global variables in services and classes and I use an heavy database (sqlite), I can check if user is logged in and a lot of other things...
Are android-apps supposed to re-run the main activity instead of continuing the running one? I don't know, but this behaviour doesn't happen in my Android-8 phone, in another Android-7 Tablet and in my daughter's Android-10 phone: it happens only in this case, as I know.