Я не понимаю Activity.onDestroy ()
. Мне нужно освободить некоторые ресурсы, когда мое Activity уничтожено, но похоже, что onDestroy () вызывается только тогда, когда я нажимаю клавишу «Назад», но не тогда, когда Dalvik убивает мою Activity. Я протестировал это, просто добавив log:
Log.v ("my_tag", "onDestroy () called");
и то же самое в методе onCreate ():
Log.v ("my_tag" , "onCreate () called");
Затем я запускаю свою Activity и вижу в журналах: onCreate () called
. Я нажимаю кнопку «Назад», а затем снова запускаю Activity, после чего вижу:
onDestroy() called
onCreate() called
Затем я нажимаю клавишу «Home» и снова перехожу в свою Activity, журналы не меняются. Хорошо здесь.
Затем я снова нажимаю клавишу «Домой» и запускаю несколько действительно «тяжелых» приложений. В журналах нет ничего о onDestroy (), но когда я снова начинаю свою Activity, я вижу в журналах: onCreate (), называемый
! Итак, onDestroy () не был вызван, но моя Activity была убита. Что не так?