액티비티를 어떻게 생성하고 관리하는지를 제어하는 일을 의미한다.
시스템에는 기본 규칙이 있으나 특정 상황을 위해 설정을 추가할 수 있다.
앱이 실행될 때 시스템에서 액티비티의 각종 정보를 저장하는 공간
AppFirst가 AppSecond와 연동된 상황을 예를 들자면
AppFirst에서 Main -> One -> Two 액티비티를 호출하고, AppSecond의 Two Activity를 호출한다면
AppFirst Task에 모든 액티비티들이 쌓이게 된다.
액티비티 객체가 생성되고 태스크에 등록되는 2가지 제어 방식이 있다.
<--! 매니페스트 파일에서 launchMode로 제어 -->
<activity android:name=".TwoActivity" android:launchMode="mode">
// 코드에서 flags 속성으로 제어
val intent = Intent(this, TwoActivity::class.java)
intent.flags = Intent.FLAG_ACTIVITY_MODE
startActivity(intent)
standard
singleTop
singleTask
singleInstance