[Android] 활동 수명 주기, Activity Lifecycle

Jeanine·2022년 7월 13일
0

android

목록 보기
7/10
post-custom-banner

안드로이드 앱 개발을 할 때 필수적으로 알아야 하는 것 중에 하나가 바로 'Activity Lifecycle'이다.
그런데 이와 관련된 내용(공식 문서 포함)을 보면, 너무 정보가 많아 이해하기가 어렵다.
그래서 필수적인 정보들만 정리해놓고자 한다.

수명 주기 콜백

1. onCreate()

  • Activity를 생성할 때 실행
  • 전체 수명 주기 동안 한 번만 발생
  • 뒤이어 onStart()와 onResume()이 연달아 실행

2. onStart()

  • UI를 관리하는 코드를 초기화

3. onResume()

  • 해당 Activity가 foreground에 표시
  • 다른 Activity로 이동하거나, 기기 화면이 꺼지면 onPause() 실행

4. onPause()

  • 해당 Activity가 foreground에 있지 않을 때 실행

5. onStop()

  • 다른 Activity가 화면 전체를 차지할 때 실행

6. onDestroy()

  • 사용자가 Activity를 닫을 때 실행 / 화면을 회전할 때 실행 (= 일시적으로 Activity 소멸)

실제 사용 예시

MainActivity와 SecondActivity가 있다고 하자.
수명 주기 콜백을 다 override해서 로그를 찍어보면 다음과 같다.

1) MainActivity 실행

MainActivity : OnCreate
MainActivity : OnStart
MainActivity : OnResume

2) SecondActivity로 이동

MainActivity : OnPause
SecondActivity : OnCreate
SecondActivity : OnStart
SecondActivity : OnResume
MainActivity : OnStop

3) MainActivity로 돌아가기

SecondActivity : OnPause
MainActivity : OnRestart
MainActivity : OnStart
MainActivity : OnResume
SecondActivity : OnStop
SecondActivity : OnDestroy

📌 onRestart()는 Activity가 정지된 후(onStop()) 다시 시작하기 전에 호출

4) MainActivity에서 화면 회전

MainActivity : OnPause
MainActivity : OnStop
MainActivity : OnDestroy
MainActivity : OnCreate
MainActivity : OnStart
MainActivity : OnResume


[공식 문서 참고]
1. 활동 수명 주기에 관한 이해

profile
Grow up everyday
post-custom-banner

0개의 댓글