Shorter Explanation(Considering you are not using fragments):
- Creation of activity is
OnCreate,OnStart,OnResume
- When you rotate the screen
OnPause,OnStop,OnDestroy- Again
OnCreate,OnStart,OnResumebecause activity is destroyed and recreated onOrientation change
Thus, if you won't rotate OnCreate,OnStart,OnResume is not fired for the second time !
Understand the Which events are executed and when:
Have a look at one of my answers i posted in stackoverflow - Click Here
A Use case Example(Considering you are using fragments):
Sample Project:
I have an opensource project Download it here and execute it and see the log to understand >the sequence of events executes one after another(I have fragment also in this project exclude the >fragment logs if you don't need it)
Project Observations
If the path is Activity-FragmentOne and change the orientation for the first time then the events fired are as follows
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume
If the path is Activity-FragmentOne-orientationchange and change the orientation for the first time then the events fired are as follows
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume
- If the path is
Activity-FragmentOne-orientationchange-orientationchange and change the orientation for the first time then the events fired are as follows
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume
- If the path is
Activity-FragmentOne-orientationchange-orientationchange-FragmentTwo and change the orientation for the first time then the events fired are as follows
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onStop-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentTwo-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume
- If the path is
Activity-FragmentOne-orientationchange-orientationchange-FragmentTwo-orientationchange and change the orientation for the first time then the events fired are as follows
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentOne-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onStop-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentTwo-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume-
FragmentOne-onPause-
FragmentOne-onSaveInstanceState-
FragmentOne-onSaveInstanceState-
FragmentOne-onStop-
FragmentOne-onDestroy-
FragmentOne-onDetach-
FragmentOne-onDestroy-
FragmentOne-onDetach-
MainActivity-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onAttach-
FragmentOne-onCreate-
FragmentOne-onCreateView-
FragmentTwo-onActivityCreated-
FragmentOne-onStart-
FragmentOne-onResume