본문 바로가기
Android App/Kotlin

Activity화면관리-백스택, 태스크, 프로세스

by AppJinny 2022. 11. 10.

*Activity-백스택, 태스크, 프로세스

-백스택(Back Stack) : 액티비티, 화면 컴포넌트를 담는 안드로이드 저장공간

-태스크(Task) : 애플리케이션에서 실행되는 프로세스를 관리하는 작업단위

-프로세스(Process) : 애플리케이션의 실행 단위

 

*백스택(Back Stack) 

-화면. 즉 액티비티, 화면 컴포넌트를 담는 안드로이드 저장공간

-종이 쌓이 듯 액티비티가 백스택에 쌓이고 가장 위에 있는 액티비티가 보이거나 현재 액티비티를 종료하면 그 아래에 쌓여있던 액티비티가 백스택의 가장 위로 오면서 화면에 보임

 

*프로세스(Process)

-애플리케이션의 실행 단위

-하나의 앱을 만들고 실행 하면 앱당 하나의 프로세스가 생성되고 그 프로세스가 액티비티를 처리함

 

*태스크(Task)

-애플리케이션에서 실행되는 프로세스를 관리하는 작업단위

-다른 프로세스의 액티비티를 함께 담을 수 있음(ex. 카메라와 갤러리 액티비티)

-카메라는 하나의 앱으로 안드로이드에 미리 만들어져 있으며 카메라 액티비티 또한 카메라 앱의 프로세스에 의해 처리

-카메라 사용 시 인텐트를 시스템에 전달하면 카메라 액티비티가 다른 앱에 있기 때문에 프로세스 새로생성

-호출 된 카메라는 새로운 프로세스에서 동작하지만 하나의 태스크로 묶임

-호출한 프로세스의 액티비티와 동일한 태스크로 묶이고 하나의 앱처럼 사용됨

 

*액티비티 태스크 관리 

-태스크 관리는 두 가지 방법이 있음

-AndroidManifest.xml 설정으로 관리 : <activity> 태그 안에 속성 사용 가능

AndroidManifest.xml 설정 시 태스크 관리 속성

 

-소스코드에서 관리 : startActivity()메서드에 전달하는 intent의 플래그 값 설정

 

 


이 포스팅에 작성한 내용은 고돈호, ⌜이것이 안드로이드다⌟, 한빛미디어(주), 2022 에서 발췌하였습니다.