액티비티(Activity)는 메모리에 상주되면서 소멸되기까지의 <생명주기>를 가지고 있습니다.
그래서 생명주기에 따라 콜백 메서드가 호출이 되는데 액티비티를 구현할 시에 반드시 알아야 하는 내용이며 안드로이드에서 액티비티의 생명주기에 대한 이해는 중요합니다!
구글 안드로이드 API 가이드 액티비티 라이프사이클
위 이미지는 구글 안드로이드 레퍼런스 API 가이드에 나오는 액티비티 생명주기 설명 이미지입니다.
각 메서드 순서는 onCreate() ► onStart() ► onResume() ► onPause() ► onStop() ► onDestory()순으로 실행이 되며, 상황에 따라 onRestart() 메소드가 호출되기도 합니다.
아래는 각 생명주기 메서드에 관한 간략한 설명인데요.
잘 정리된 것이 있어 해당 표를 가져왔습니다.
생명주기 메소드
메소드 | 설명 | 다음 메소드 |
onCreate() | 액티비티가 생성될 때 호출되며 사용자 인터페이스 초기화에 사용됨. | onStart() |
onRestart() | 액티비티가 멈췄다가 다시 시작되기 바로 전에 호출됨. | onStart() |
onResume() | 액티비티가 사용자와 상호작용하기 바로 전에 호출됨. | onPause() |
onPause() | 다른 액티비티가 보여질 때 호출됨. 데이터 저장, 스레드 중지 등의 처리를 하기에 적당한 메소드. | onResume() 또는 onStop() |
onStop() | 액티비티가 더이상 사용자에게 보여지지 않을 때 호출됨. 메모리가 부족할 경우에는 onStop() 메소드가 호출되지 않을 수도 있음. | onRestart() 또는 onDestroy() |
onDestroy() | 액티비티가 소멸될 때 호출됨. finish() 메소드가 호출되거나 시스템이 메모리 확보를 위해 액티비티를 제거할 때 호출됨. | 없음 |
그래서 각 생명주기 메소드를 잘 오버라이딩하여서 상황에 맞는 기능을 구현하면 됩니다.
'Develop > Android' 카테고리의 다른 글
MVP 패턴 (0) | 2021.11.26 |
---|---|
MVC 패턴 (0) | 2021.11.14 |
안드로이드(Android) LifeCycle 관련 질문 예시 (0) | 2021.11.10 |
안드로이드(Android)의 4대 컴포넌트(구성요소) (0) | 2021.11.07 |
최근댓글