Я изучаю Android и придумал странное наблюдение:
на основе схемы и описания на https://developer.android.com/guide/components/activities/activity-lifecycle
Кажется, что два обратных вызова onCreate и onDestroy не являются симметричными.
Кажется, что когда приложение теряет фокус или оказывается в фоновом режиме, система может убить приложение, не вызывая onDestroy. Позже, когда приложение снова запускается, вызывается onCreate.
Я пытался проверить это, но не мог понять, как смоделировать ситуацию, когда система убивала приложение из-за проблем с памятью. Я пытался открыть много приложений на своем телефоне, тестовое приложение никогда не убивалось :)
Допустим, это случается в некоторых случаях. Означает ли это, что вы могли бы вызывать onCreate больше, чем onDestroy, что потенциально может вызвать утечки памяти, если вам случится получить ресурсы в onCreate и освободить onDestroy? Если мои наблюдения верны, есть ли лучшие практики для решения проблем с выпуском ресурса?
Спасибо.