← 글 목록

notes

Android - Jet pack

Android Jetpack의 주요 라이브러리·구성요소와 앱 적용 기준 정리.

Jetpack을 “라이브러리 목록”으로만 외우면 금세 까먹는다. 나는 문제를 해결할 때 손 가는 상자로 다시 묶었다.

왜 쓰나

Support Library 시절 파편화를 AndroidX로 정리하고, 생명주기·백그라운드·네비게이션처럼 실수하기 쉬운 부분을 공식 패턴으로 고정하려고 만든 모음이다.

내가 실제로 만지는 축

Compose와의 관계

Compose도 Jetpack 식구. View 시스템을 대체하는 선언형 UI. 기존 XML 화면과 섞을 때는 AndroidView / ComposeView로 다리를 놓는다.

의존성 감각

implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.x")
implementation("androidx.navigation:navigation-fragment-ktx:2.x")
implementation("androidx.room:room-runtime:2.x")

BOM이 있는 군(Compose)은 BOM으로 버전을 맞추고, 나머지는 팀에서 쓰는 카탈로그에 고정.

헷갈림

  • LiveData vs Flow: 새 코드는 Flow + lifecycleScope/repeatOnLifecycle 쪽으로 기운다
  • WorkManager ≠ 당장 포그라운드 서비스. “보장된 지연 작업”
  • Navigation Component 없이 수동 FragmentTransaction 해도 되지만, 딥링크·백스택 규약이 힘들어짐