본문 바로가기
안드로이드/Activity

안드로이드 Activity 생명주기

by 김어찐 2022. 6. 9.
728x90
현재 보이는 화면을 관리하는 실행 단위
애플리케이션을 실행하면 Activity가 실행되고 Activity가 관리하는 화면이 나타나게 된다.
 

package com.example.activitylifcycle

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log

class MainActivity : AppCompatActivity() {
    // Activity가 생성될 때 자동으로 호출된다.
    // 화면 전환이 발생할 때 자동으로 호출된다.
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        Log.d("test1", "onCreate")
    }

    // onCreate 호출 이후에 자동으로 호출
    // Activity가 정지 상태가 되었다가 활동 상태로 돌아올 때 호출
    override fun onStart() {
        super.onStart()
        Log.d("test1", "onStart")
    }

    // onStart메서드가 호출된 이후에 자동으로 호출된다.
    // Activity 일시 정지 되었다가 다시 돌아 올떄 호출
    override fun onResume() {
        super.onResume()
        Log.d("test1", "onResume")
    }

    // Activity가 정지 상태가 되었다가 활동 상태로 돌아갈 때 onStart 전에 호출된다.
    override fun onRestart() {
        super.onRestart()
        Log.d("test1", "onRestart")
    }

    // Activity가 일시 정지 상태가 될 때 호출된다.
    // 화면상에 완전히 사라지거나 현재 화면 위에 작은 팝업 창 같은 것이 나타날 때 호출
    override fun onPause() {
        super.onPause()
        Log.d("test1", "onPause")
    }

    // Activity가 화면에서 사라질 떄 호출된다.
    override fun onStop() {
        super.onStop()
        Log.d("test1", "onStop")
    }

    // 현재 액티비티의 수행이 완전히 종료되어 메모리상에서 제거될 때 호출된다.
    override fun onDestroy() {
        super.onDestroy()
        Log.d("test1", "onDestroy")
    }
}


728x90