활동 수명 주기

2021. 4. 28. 14:51Android/Activity

활동 수명 주기를 간략하게 표현한 그림

 

 

onCreate()

구현 시 활동의 필수 구성요소를 초기화해야 합니다. 예를 들어 앱은 여기에서 뷰를 생성하고 데이터를 목록에 결합해야 합니다. 이 콜백에서 setContentView()를 호출하여 활동의 사용자 인터페이스를 위한 레이아웃을 정의해야 하며 이 작업이 가장 중요합니다.

 

onStart()

 

onResume()

앱의 핵심 기능은 대부분 onResume() 메서드로 구현됩니다.

onPause()

onPause()는 아주 잠깐 실행되므로 저장 작업을 실행하기에는 시간이 부족할 수 있습니다. 그러므로 onPause()를 사용하여 애플리케이션 또는 사용자 데이터를 저장하거나, 네트워크 호출을 하거나, 데이터베이스 트랜잭션을 실행해서는 안 됩니다. 이러한 작업은 메서드 실행이 끝나기 전에 완료되지 못할 수도 있습니다. 그 대신, 부하가 큰 종료 작업은 onStop() 상태일 때 실행해야 합니다. onStop() 상태 동안 실행할 적절한 작업에 관한 자세한 내용은 onStop()을 참조하세요. 

onStop()

onStop() 메서드에서는 앱이 사용자에게 보이지 않는 동안 앱은 필요하지 않은 리소스를 해제하거나 조정해야 합니다. 예를 들어 앱은 애니메이션을 일시중지하거나, 세밀한 위치 업데이트에서 대략적인 위치 업데이트로 전환할 수 있습니다. onPause() 대신 onStop()을 사용하면 사용자가 멀티 윈도우 모드에서 활동을 보고 있더라도 UI 관련 작업이 계속 진행됩니다.

또한 onStop()을 사용하여 CPU를 비교적 많이 소모하는 종료 작업을 실행해야 합니다. 예를 들어 정보를 데이터베이스에 저장할 적절한 시기를 찾지 못했다면 onStop() 상태일 때 저장할 수 있습니다.

onRestart()

 

onDestroy()

 

 

 

참고 : https://developer.android.com/guide/components/activities/activity-lifecycle?hl=ko#alc