В соответствии с жизненным циклом активности андроида, единственный вызываемый вызов, который должен быть вызван (если активность когда-либо покидает состояние Running, которое обычно ожидается) составляет onPause().
Итак, я должен предположить, что существуют сценарии, в которых имеет смысл реализовать onStop() и onDestroy(), хотя на самом деле они не гарантируются.
Я понимаю, что onStop() должен быть реализован, когда возможно, что действие вернется в состояние Running через состояние Stopped (почему бы ему это сделать, а не возвращать напрямую - это другой вопрос).
Но необходимость onDestroy(), когда я могу разместить всю очистку/сохранение состояния в onPause(), мне непонятно.
Можете ли вы описать ситуацию с реальным приложением (т.е. не аналогию с вождением автомобиля и т.д.), в которой было бы целесообразно реализовать onDestroy()?