제트팩과 androidx
구글에서는 안드로이드 앱을 개발하는 데 필요한 다양한 라이브러리 모음을 제트팩이라는 이름으로 제공합니다. 제트팩은 안드로이드 플랫폼이 기본으로 제공하는 플랫폼 API 외에 따로 추가된 라이브러리입니다.
플랫폼 API
플랫폼 API는 ART(Android Run Time)에서 제공하는 안드로이드 앱의 핵심 라이브러리입니다. ART는 대부분 android나 java로 시작하는 패키지명을 사용합니다. java.lang.String, java.util.Date 등의 자바 클 래스부터 android.app.Activity, android.widget.TextView 등의 안드로이드 클래스는 모두 플랫폼 API입니다.
안드로이드 앱은 런타임 때 ART에 의해 실행되므로 ART에서 제공하는 플랫폼 API를 이용해 개발합니다. 그런데 플랫폼 API를 이용하면 사용자 기기의 버전과 달라서 호환성 문제가 발생할 수 있습니다.
제트팩
제트팩은 구글에서 안드로이드 앱 개발용으로 2018년부터 추가로 제공한 다양한 라이브러리 모음으로 androidx로 시작하는 패키지명을 사용합니다.
안드로이드 공식 문서에서는 제트팩을 다음처럼 소개합니다.
제트팩은 개발자가 관심 있는 코드에 집중할 수 있도록 권장 사항 준수, 상용구 코드 제거, 모든 안드 로이드 버전과 기기에서 일관되게 작동하는 코드를 작성할 수 있도록 돕는 라이브러리 모음입니다.
제트팩이 제공하는 3가지 목적
- 앱을 개발하는 데 필요한 권장 아키텍처를 제공합니다.
- API 레벨의 호환성 문제를 해결합니다.
- 플랫폼 API에서 제공하지 않는 다양한 기능을 제공합니다.
androidx 라이브러리
라이브러리 | 설명 |
androidx.appcompat | 앱의 API 레벨 호환성을 해결합니다. |
androidx.recyclerview | 목록 화면을 구성합니다. |
androidx.viewpager2 | 스와이프로 넘기는 화면을 구성합니다. |
androidx.fragment | 액티비티처럼 동작하는 뷰를 제공합니다. |
androidx.drawerlayout | 옆에서 서랍처럼 열리는 화면을 구성합니다. |
참고
https://developer.android.com/jetpack/androidx?hl=ko