Android Handling Lifecycles
사용 언어: Kotlin 1.8.0
사용 버전: Android Studio Electric Eel 2022.1.1 Patch 1
Activity와 Fragment에는 생명 주기(Lifecycle)가 있습니다. 이 생명 주기를 잘 알아야지 개발할 수 있는데요.
onCreate, onStart, onResume 등이 생명 주기를 나타냅니다.
https://developer.android.com/topic/libraries/architecture/lifecycle
사용 버전: Android Studio Electric Eel 2022.1.1 Patch 1
안드로이드 Handling Lifecycles를 알아보겠습니다.
Activity와 Fragment에는 생명 주기(Lifecycle)가 있습니다. 이 생명 주기를 잘 알아야지 개발할 수 있는데요.
onCreate, onStart, onResume 등이 생명 주기를 나타냅니다.
https://developer.android.com/topic/libraries/architecture/lifecycle
이 생명주기 함수에 바로 무엇인가 오래 걸리는 작업을 override 하는 것은
권장하지 않습니다.
그래서 안드로이드에서는 DefaultLifecycleObserver를 제공해 줍니다.
생명주기에 바로 덮어쓰는 것이 아니라, 따로 그 생명주기가 실행되는 것을
관찰하다가 실행되면 실행하는 역할을 합니다.
아래와 같은 코드가 있습니다.
파일을 하나 더 만듭니다.
마우스 우 클릭 - New - Kotlin Class/File
대충 아무 이름으로 만듭니다.
저는 LifecycleObserver로 만들었습니다.
DefaultLifecycleObserver를 상속받습니다.
그리고 MainActivity에 있는 onStart와 onStop을 대신할 onStart와 onStop을
override 합니다.
MainActivity로 갑니다.
11 번째 줄처럼 lifecycle.addObserver()를 해줍니다.
실행해 봅시다.
Observer의 Log가 잘 보이는 것을 볼 수 있습니다.
Fragment에서의 사용법도 동일합니다.
다만, 여기서는 viewLifecycleOwner.lifecycle.addObserver()를 사용합니다.
카테고리: Android
댓글
댓글 쓰기
궁금한 점은 댓글 달아주세요.
Comment if you have any questions.