Search code examples
androidandroid-activityandroid-lifecycle

Android - While switching between two activities, the calling order of lifecycle methods of Activity


I want to start an Activity (SECOND Activity) from another Activity (FIRST Activity) by calling startActivity(intent). Before I actually do it, I found people say that the lifecycle methods are called in the following order:

FIRST Activity onCreate
FIRST Activity onStart
FIRST Activity onResume
FIRST Activity onPause
SECOND Activity onCreate
SECOND Activity onStart
SECOND Activity onResume
FIRST Activity onStop

Is the SECOND Activity onResume always called before FIRST Acitivity onStop? I thought

FIRST Activity onPause
FIRST Activity onStop
SECOND Activity onCreate
SECOND Activity onStart
SECOND Activity onResume

will be called, but it seems not.

Also, if I just switch between two activities,

FIRST Activity onPause
SECOND Activity onRestart
SECOND Activity onStart
SECOND Activity onResume
FIRST Activity onStop

Are the methods always called in this order?


Solution

  • According to the documentation, SECOND.onResume() is supposed to be called before FIRST.onStop() https://developer.android.com/guide/components/activities/activity-lifecycle#coordinating-activities (Coordinating activities section)