Android Handling Lifecycles

사용 언어: Kotlin 1.8.0
사용 버전: 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

댓글

이 블로그의 인기 게시물

Python OpenCV 빈 화면 만들기

Python urllib.parse.quote()

Python bytes.fromhex()

Android AVD Ram size change

Forensics .pyc 파일 .py로 복구하기

Android Minimum touch target size

KiCad 시작하기 7 (FreeRoute 사용하기 2)

Android Notification with Full Screen

C++ OpenCV 모폴로지 침식, 팽창

KiCad 시작하기 2 (PCB 만들기)