인코딩의 Decoding

반응형

안드로이드의 Activity는 다음과 같은 생명 주기를 갖는다.

 

  1. onCreate() - Activity가 생성될 때 / 화면 정의하는 용도로 많이 사용 / onCreate()가 완료되면 onStart()가 호출됨
  2. onStart() - Activity가 사용자에게 보여질때 / 아직 사용자와 상호작용은 불가능
  3. onResume() - 사용자와 상호작용 하는 단계 / Activity 스택의 Top에 위치 / 주로 어플 기능이 onResume()에 설정됨
  4. onPause() - Activity가 잠시 멈춘 단계 / background에 Activity가 위치 /onStop() 이나 onResume() 상태로 전환
  5. onStop() - Activity가 사용자에게 보이지 않는 단계 / onDestroy() 나 onRestart() 상태로 전환 가능
  6. onRestart() - onStop()이던 Activity가 재시작 되는 단계 / onRestart() 뒤에는 onStart()가 자동 호출된다.
  7. onDestroy() - onStop()이던 상태가 완전이 제거되는 단계 / Activity가 호출하는 마지막 메소드

이번 글에서는 생명주기의 일곱번째 단계의 메소드 onDestroy()에 대하여 알아보겠습니다.

+

(6) onRestart 간단 설명 : onStop에서 onRestart()단계로 가게되면 onRestart() -> onStart() -> onResume() 단계를 거침

 

(7) onDestroy()

 

  • Activity가 소멸되기 직전에 호출됨
  • ex) Activity가 종료되는 경우( Activity를 완전히 닫거나 Activity에서 finish() 메소드를 호출한 경우)
  • ex) 화면 구성 변경으로 Activity가 소멸된 경우 ( 화면 회전이나 멀티 윈도우 모드로 변경했을 경우)
  • Activity가 소멸될때 ViewModel 객체를 이용하면 Activity의 뷰 데이터를 보관할 수 있다.
  • ViewModel에 저장된 뷰 데이터는 화면 회전 등으로 뷰 데이터를 그대로 사용할 경우 유용하다.
  • 화면 회전 등의 구성 변경으로 Activity가 종료된 경우에는 바로 새로운 Activity가 onCreate()된다.
  • Activity에 있는 데이터를 더 이상 쓰지 않는다면 onDestroy 단계에서 모두 정리해줘야 한다.

+

이전글 참고

 

- Activity란?

2020/01/22 - [안드로이드] - [Android] Activity의 개요 및 Activity의 생명 주기 소개

- onCreate()란?

2020/01/29 - [안드로이드] - [Android] 안드로이드 Activity의 생명 주기 - (1) onCreate()

- onStart()란?

2020/02/02 - [안드로이드] - [Android] 안드로이드 Activity의 생명 주기 - (2) onStart()

- onResume()이란?

2020/02/03 - [안드로이드] - [Android] 안드로이드 Activity 생명주기 - (3) onResume()

- onPause()란?

2020/02/04 - [안드로이드] - [Android] 안드로이드 Activity 생명주기 - (4) onPause()

- onStop()이란?

2020/02/05 - [안드로이드] - [Android] 안드로이드 Activity 생명주기 (5) onStop()

 

참고 - "핵심 개발자 주제 - 액티비티" , android 개발자 사이트

https://developer.android.com/guide/components/activities/activity-lifecycle.html

반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band