If an activity (with WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD | 
FLAG_SHOW_WHEN_LOCKED | FLAG_TURN_SCREEN_ON) is launched while the screen 
is off, the order of activity lifecycle callbacks is:
   onCreate, onStart, onResume, onPause, onStop, onRestart, onStart, 
onResume
Why does Android stop the activity and restart it?

I happenned to be calling finish() in onStop() (not realizing the above 
behavior) since I did not want to handle restart*. With this, the order of 
activity lifecycle callbacks is usually:
   onCreate, onStart, onResume, onPause, onStop

However, once in a while, the order of callbacks is:
   onCreate, onStart, onResume, onPause, onStop, onRestart, ...
This seems like a bug. If onStop calls finish(), it should not be followed 
by onRestart, right?

Thanks,
Shri

* The activity displays a snapshot of the current state. If it can be 
restarted, it has to handle the case where the state has changed (which is 
doable, but a bit tricky) and update the UI to display the new state. I was 
attempting to simplify my logic by ensuring that the activity is never 
restarted so that I do not have to worry about a change in state.

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to