Android

[Android] 안드로이드 생성주기

poppy 2020. 9. 10. 17:32
반응형

생성주기(LifeCycle)

액티비티의 생명주기는 액티비티의 생성부터 소멸까지의 주기를 말합니다.

 

다음 그림을 살펴보면서 생성주기에 대해 살펴보면 더 쉽게 이해할 수 있을 것입니다!

액티비티 생성주기

onCreate()

- 앱이 실행되면 호출되는 함수입니다. 앱이 처음 시작할 때 한 번만 실행되는 함수입니다.

onStart()

- 액티비티가 사용자에게 보여지기 직전에 호출되는 함수입니다. 액티비티가 시작되기 전에 호출되는 것입니다.

onResume()

- 액티비티가 실행 중 일 때 호출되는 함수입니다. 사용자에게 액티비티가 보여지고, 사용자와 상호작용이 가능하게 됩니다.

onPause()

- 액티비티가 사용자와 상호작용이 불가한 상태, 즉 포커스를 잃은 상태일 때 호출되는 함수입니다. 액티비티가 완전히 가려지지 않은 상태입니다. 액티비티가 완전히 가려지지 않고 일부분만 보일 때 호출됩니다.

onStop()

- 액티비티가 더 이상 보이지 않을 때 호출되는 함수입니다. 액티비티가 완전히 가려진 상태입니다. 이 상태에서 다른 액티비티가 불려진다면 onRestart() 함수가 호출됩니다.

onRestart()

- 액티비티가 멈춰있다가 다시 불려질 때 호출되는 함수입니다.

onDestroy()

- 액티비티가 종료되거나 앱이 종료되면 호출되는 함수입니다.

 

예를 들어, MainActivity 에서 SecondActivity로 화면 전환 후 앱이 종료되는 과정일 때 생성주기를 살펴보겠습니다.

시작 - onCreate() - onStart() - onResume() - onPause() - onStop()  => 여기까지가 MainActivity 실행 후 멈춤

- onRestart() - onStart() - onResume() - onPause() - onStop() => 여기까지가 SecondActivity 실행 후 멈춤

- onRestart() - onStart() - onResume() - onPause() - onStop() - onDestroy() - 종료 => 여기까지가 다시 MainActivity로 돌아온 후 앱 종료

반응형