The following figure (from the official doc) describes the well-known lifecycle of an Android activity:
As per doc1 and doc2
onSaveInstanceState
Prior to Honeycomb, activities were not considered killable until after they had been paused, meaning that onSaveInstanceState() was called immediately before onPause(). Beginning with Honeycomb, however, Activities are considered to be killable only after they have been stopped, meaning that onSaveInstanceState() will now be called before onStop() instead of immediately before onPause().
onRestoreInstanceState
This method is called between onStart() and onPostCreate(Bundle) when the activity is being re-initialized from a previously saved state