Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

onStop vs onDestroy

I have tried to research exactly when the onDestroy method is called for an activity, but I've read some confusing and conflicting information. In general, my question is: under what circumstances is the onDestroy method actually called on an activity? More specifically, if I have two activities, activity A and activity B, if activity A is running and I create an intent and switch to activity B, is activity A only stopped, or is it destroyed?

like image 675
Thomas Avatar asked Mar 30 '15 20:03

Thomas


1 Answers

Like stated in the official documentation:

onDestroy()

The final call you receive before your activity is destroyed. This can happen either because the activity is finishing (someone called finish() on it, or because the system is temporarily destroying this instance of the activity to save space. You can distinguish between these two scenarios with the isFinishing() method.

In your example the Activity A is stopped and could be destroyed by the System


Note per documentation link above:
…do not count on [onDestroy()] being called as a place for saving data … [see] either onPause() or onSaveInstanceState(Bundle).
like image 127
JoaoBiriba Avatar answered Oct 27 '22 03:10

JoaoBiriba