티스토리 뷰
액티비티 생명주기
액티비티(Activity)가 생성, 실행, 일시 중지, 종료되는 과정을 관리하는 체계
핵심 콜백(callback) 메소드

1. onCreate()
- 액티비티 최초 생성 시 호출됨
- 초기 UI 설정, 리소스 초기화, View 바인딩 등을 처리
2. onStart()
- 액티비티를 사용자에게 표시하며 사용자와의 상호작용 준비 작업 수행
3. onResume()
- 액티비티가 재개될 때 호출됨
- 사용자 입력(터치, 키보드 입력 등)이 가능한 상태가 됨
4. onPause()
- 액티비티가 부분적으로 보이지 않거나, 사용자가 액티비티를 떠날 때 호출됨
5. onStop()
- 액티비티가 사용자에게 완전히 보이지 않을 때 호출됨 (예: 다른 액티비티가 화면 전체 표시 시)
- 리소스 해제, 데이터 저장, 백그라운드 작업 처리 등 수행
6. onDestroy()
- 액티비티 소멸 전 호출됨 (예: finish() 호출, 사용자가 BACK 버튼 클릭, 메모리 부족 등 시스템 제약으로 인한 소멸)
- 리소스 정리, 메모리 해체 등의 작업 처리
특수. onRestart()
- 정지된 액티비티가 다시 실행될 때 호출됨 (예: 사용자가 다시 액티비티로 전환 시)
- onStop() 상태에서 onStart() 상태가 됨
액티비티 간 이동 시 액티비티 생명주기
액티비티 A 시작 시
- 액티비티 A의 onCreate(), onStart(), onResume() 메소드 순차 호출
액티비티 A가 액티비티 B를 시작 시
- 액티비티 A의 onPause() 메소드 호출
- 액티비티 B의 onCreate(), onStart(), onResume() 메소드 순차 호출
- 액티비티 A가 화면에서 보이지 않는 경우, 액티비티 A의 onStop() 메소드 호출
액티비티 B 종료(finish() 호출) 및 액티비티 A로 복귀 시
- 액티비티 B의 onPause(), onStop(), onDestory() 메소드 순차 호출
- 액티비티 B가 종료되고 액티비티 A가 다시 복귀되는 경우, 액티비티 A의 onRestart() 메소드 호출
- 액티비티 A의 onStart(), onResume() 메소드 순차 호출
화면 회전(가로/세로 전환) 시 액티비티 생명주기
액티비티 A 시작 시
- 액티비티 A의 onCreate(), onStart(), onResume() 메소드 순차 호출
액티비티 A 실행 중 화면 회전 시
- 액티비티 A의 onPause(), onStop(), onDestory() 메소드 순차 호출
- 화면 회전 후 다시 액티비티 A가 재생성 되어, 액티비티 A의 onCreate(), onStart(), onResume() 메소드 순차 호출
'학업 > 모바일프로그래밍' 카테고리의 다른 글
[Android Studio] 웹페이지 이동 앱 (0) | 2024.12.17 |
---|---|
[Android Studio] 리스트뷰(ListView) (1) | 2024.12.17 |
[Android Studio] 지도 검색 앱 (0) | 2024.12.17 |
[Android Studio] 암시적 인텐트: 작업 불러오기(전화, 연락처, 인터넷, 지도) (0) | 2024.12.17 |
[Android Studio] 다중 액티비티 초기 설정, 인텐트(Intent) (1) | 2024.12.16 |
공지사항
링크