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