목록 보기
Glide  의 Activity 생명주기 콜백 처리
프론트엔드

Glide 의 Activity 생명주기 콜백 처리

모히톡
모히톡
2020년 6월 29일

두줄요약

Glide가 숨겨진 Fragment로 Activity 생명주기를 수신하는 구조를 분석했습니다. RequestManager가 이미지 요청의 재개·중지·정리를 자동 처리합니다.

구조와 흐름

  • Glide.with(Activity) 호출 시 Activity의 FragmentManager에서 RequestManagerFragment 탐색 또는 생성
  • UI 없는 RequestManagerFragment를 Activity에 추가해 Activity 생명주기 콜백 수신
  • Fragment의 onStart·onStop·onDestroy 이벤트를 ActivityFragmentLifecycle 리스너에 전달
  • RequestManager가 리스너로 등록되어 요청과 Target의 재개·일시 중지·제거 수행

선택 이유

  • 이미지 다운로드·디코딩·표시와 캐시 처리를 Activity 상태에 맞춰 자동 제어
  • 개발자 측 생명주기별 요청 관리 코드 최소화
  • Fragment 태그와 대기 맵을 통한 RequestManagerFragment 중복 생성 방지

주의할 점

  • 백그라운드 스레드의 get(Activity) 호출은 Fragment를 생성하지 않고 애플리케이션 생명주기 사용
  • 애플리케이션 생명주기 경로에서는 onStart 이벤트만 수신 가능
  • onDestroy 시 Target·Request·Lifecycle 리스너·등록된 RequestManager 정리

다음 읽기

비슷한 주제의 백엔드 글

Spring Transactional Rollback Deep Dive

Spring @Transactional 의 롤백이 언제 마킹되는지 예외 타입과 프록시 동작을 기준으로 정리했습니다. Kotlin 과 REQUIRES_NEW 까지 포함해 실제 동작 차이와 주의점을 설명했습니다.

하이퍼커넥트
하이퍼커넥트
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...