본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[Android/안드로이드] 액티비티 생명주기. ( Activity Life cycle )

by 돼지왕 왕돼지 2012. 2. 19.
반응형


안녕하세요. 돼지왕 왕돼지입니다. 
오늘은 안드로이드 component 중 가장 많이 사용하는 Activity.
액티비티의 생명주기에 대해 알아보겠습니다.
 

이미지 출처 : http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle


 요 그래프만 제대로 이해해도, 생명주기를 이해할 수 있습니다.
 

onCreate

 
 액티비티를 초기화하는 데 사용된다. 특정 조건 ( Orientation 변화 등 )으로 중지했다 재시작하는 경우라면 액티비티의 이전 상태 정보인 Bundle이 전달된다. 물론 onSaveInstanceState() 에서 상태 정보를 저장해야 하지만 말이다.


onRestart

 
 Activity가 재시작될 때 호출된다.


onStart

 
 액티비티가 사용자에게 보이기 진적에 호출된다.


onResume

 
 사용자와 상호작용을 하기 진적에 호출. 이 단계에서 스택의 제일 위로 올라온다. onStart 와 다른 점은, Dialog 등으로 화면이 foreground가 아니었다가 다시 foreground로 오는 경우 onStart 는 호출되지 않지만, onResume 은 호출된다.


onPause

 
 다른 액티비티가 실행될 때나 액티비티가 종료될 때 호출. 저장 못한 데이터가 있으면 저장하고 애니메이션을 중지하는 작업을 주로 한다. 이 메서드가 리턴되어야 새 액티비티가 활성화되므로 시간을  너무 많이 끄는 작업을 해서는 안된다. (킬러블 상태)


onStop


  액티비티가 사용자에게 보이지 않게 될 때 호출된다.


onDestory


 액티비티가 파괴될 때 호출. 시스템에 강제로 종료되는 것인지, 
아니면 finish 메서드 호출에 의해 스스로 종료하는 것인지는 isFinishing() 메서드로 조사 가능하다.

 
로그인 없이 추천 가능합니다. 손가락 꾸욱~





반응형

댓글