본문 바로가기

FrontEnd/Android 기초

[Android] 액티비티 라이프 사이클(Activity LifeCycle) 주요 4개 함수

반응형

액티비티 라이프 사이클 주요 4개 함수

onCreate,onResume, onPause,onDestroy

 

앱이 구동되는 시점부터 종료되는 시점까지 어떤 함수들이 호출되고, 어떤 동작을 실행하고 있는지 확인해보도록 하자. 

 

Activity Lifecycle(안드로이드 Activity 생명주기)

  • 기본적으로 main() 함수를 통해 프로그램이 구동된다. 이와 비슷하게 Android에서도 Activity의 시작은 onCreate()라는 콜백 함수를 호출하면서 시작하게 된다.
  • activity란 MainActivity파일 안에서 작용하며, 화면(xml)에 따른 로직처리를 한다.
  • 콜백: 프레임워크가 프레임워크에 의해서, 호출되는 것

 

Activity Lifecycle 다이어그램(Diagram)

여기에 보여주고 있는 모든 함수들은 콜백 함수로 Activity가 생성되어 종료되는 시점까지 자동으로 호출되므로 사용자가 모두 구현할 필요는 없지만, 각각의 함수들을 이해하고 사용할 줄 알아야한다.

 

Callback 함수

 

콜백 함수 설명
onCreate() (자동생성)앱이 생성(실행)될때마다, 가장 먼저 호출되는 콜백 함수
onStart() 앱이 화면에 보이기 시작할 때 호출된다.
onResume() 사용자가 잠시 앱을 떠났다가 다시 켰을 때, 활동이 일시중지 됨 상태에서 재개되면 시스템이 해당 함수를 호출한다. ex) 전화, 화면끔등
onPause() 사용자가 잠시 앱을 떠날 때, 사용자와 상호작용이 어려울 때 호출된다. ex) 전화, 화면끔, 타 앱 이용 등
onStop() 사용자가 장시간 앱을 떠나있을 때 호출된다. 
onRestart() 앱이 onStop()이 호출된 이후 재시작될 때 호출된다. 
onDestroy() 앱이 종료되기 직전에 호출된다. 

 

일반적으로 가장 많이 구현하는 함수는 onCreate()가 되며, onResume()과 onPause()도 빈도수가 높은 편이다.

 

참고: https://developer.android.com/guide/components/activities/activity-lifecycle#java

 

Callback 함수 구현

 

직접 타이핑 하거나

시스템에서 검색하여 삽입하면 된다.

 

MainActivity에서 마우스 우측 클릭 > Generate.. > Override Methods > 검색(바로 타이핑 하면 검색가능)

 

하기처럼 구현된다.

 

어떤 순서로 나오는지 각 콜백함수마다 Log를 찍어본다.

코드는 하기처럼 작성한다.

 
@Override
protected void onPause() {
   super.onPause();
   Log.i("MainActivity","The onPause() called");}

 

 

다이어그램순서처럼 찍힌다.


반응형