Ответ
В Android можно закрыть Activity несколькими способами:
- Вызов
finish()- завершает текущую Activity:
finish()
- Для закрытия с результатом (например, из дочерней Activity):
setResult(Activity.RESULT_OK)
finish()
- Принудительное завершение через
finishAffinity()- закрывает все Activity в текущем task:
finishAffinity()
- Через Intent флаг
FLAG_ACTIVITY_CLEAR_TOPпри запуске новой Activity:
val intent = Intent(this, MainActivity::class.java)
intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TOP
startActivity(intent)
finish()
Важно: не злоупотребляйте принудительным закрытием, так как это может нарушить ожидаемый пользователем workflow.