Season 1/기술 보안

[ Android ] Activity Life Cycle

작성자 - LRTK

Activity Life Cycle

Activity는 화면 하나를 뜻하며, 사용자가 어플리케이션을 사용하는 도중 잠깐 다른 어플리케이션으로 이동해서 다시 돌아오는 상황 등과 같은 상태 변화를 추척하기 위해 여러 콜백을 제공한다.

 

이는 아래와 같은 상황을 예방 할 수 있다.

  • 사용자가 어플리케이션을 사용하는 도중에 전화가 걸려오거나 다른 어플리케이션으로 전환할 때 비정상 종료되는 문제
  • 사용자가 어플리케이션을 사용하지 않는 경우에도 계속 시스템의 자원이 사용되는 문제
  • 사용자가 어플리케이션을 나갔다가 복귀하였을 때, 사용자의 진행 상태가 저장되지 않는 문제
  • 화면이 가로 방향과 세로 방향으로 회전된 경우, 비정상 종료되거나 사용자의 진행 상태가 저장되지 않는 문제

onCreate()

Activity가 처음 생성될 때 호출되는 함수로 필수적으로 구현되어야 한다.

 

onStart()

Activity가 사용자에게 보여지기 위해 호출되는 함수이다.

해당 함수는 ON_START 이벤트를 시스템에 수신한다.

 

onResume()

Activity가 화면에 표시된 상태으로 사용자과 상호작용을 하게된다.

이 상태에서 어떠한 이벤트가 발생하여 떠날 때까지 어플리케이션은 이 상태로 머물게 됩니다.

 

onPause()

다른 Activity가 올라와 기존 Activity focus를 잃었을 때 호출되는 상태이다.

해당 메소드를 사용하면 포그라운드에 있지 않게 된다는 것을 의미합니다. (멀티 윈도우 모드일 경우는 예외)

 

onStop()

다른 Activity가 완전히 화면에 올라와 어플리케이션의 화면이 더 이상 사용자에게 보여지지 않을 때 호출되는 상태입니다.

 

onRestart()

Stopped 상태였을 때 다시 호출되어 시작되는 상태를 뜻한다.

 

onDestroy()

Activity의 활동이 소멸되기 전 호출되는 상태입니다.

 

Contents

이 글이 도움이 되었다면, 응원의 댓글 부탁드립니다.