참고: 지원 라이브러리 28.0.0의 출시와 함께 android.support
패키징된 라이브러리가 지원 중단되고 개별 버전의 Jetpack 라이브러리(androidx
로 패키징됨)로 대체됩니다. Jetpack 라이브러리의 초기 1.0.0 출시는 지원 라이브러리 28.0.0과 동등하며 새 androidx
패키징으로 이전하기 위한 시작점을 제공합니다.
기존 android.support
패키징 라이브러리는 계속 작동하지만 28.0.0 이후 업데이트를 받지 못하며 새 Jetpack 라이브러리와 호환되지 않습니다.
이전 아티팩트 (버전 27 이상이며 android.support
로 패키징됨)는 Google Maven에서 계속 사용할 수 있습니다. 모든 새 아티팩트는 androidx
로 패키징되며 android.support
에서 androidx
로 이전해야 합니다.
모든 신규 프로젝트에서 androidx
라이브러리를 사용하는 것이 좋습니다. 버그 수정 및 기타 라이브러리 개선사항을 계속 받을 수 있도록 기존 프로젝트를 이전하는 것도 고려해 보세요.
Android 지원 라이브러리에는 애플리케이션에 포함할 수 있는 여러 라이브러리 패키지가 포함되어 있습니다. 이러한 각 라이브러리는 특정 범위의 Android 플랫폼 버전 및 기능 집합을 지원합니다.
다음 라이브러리 중 하나를 사용하려면 라이브러리 파일을 Android SDK 설치 위치로 다운로드해야 합니다. 이 단계를 완료하려면 지원 라이브러리 설정의 지원 라이브러리 다운로드 지침을 따르세요. 애플리케이션에 특정 지원 라이브러리를 포함하려면 추가 단계를 실행해야 합니다. 애플리케이션에 라이브러리를 포함하는 방법에 관한 중요한 정보는 아래 각 라이브러리 섹션의 끝부분을 참고하세요.
참고: 모든 지원 라이브러리 패키지의 최소 SDK 버전은 API 수준 14 이상입니다. 아래에 설명된 대로 일부 패키지에는 더 높은 API 수준이 필요합니다.
v4 지원 라이브러리
이러한 라이브러리에는 애플리케이션 구성요소, 사용자 인터페이스 기능, 접근성, 데이터 처리, 네트워크 연결, 프로그래밍 유틸리티를 비롯하여 다른 라이브러리에 비해 가장 큰 API 세트가 포함됩니다.
v4 지원 라이브러리에서 제공하는 클래스 및 메서드에 관한 완전하고 자세한 내용은 API 참조의 android.support.v4
패키지를 참고하세요.
참고: 지원 라이브러리 버전 24.2.0 이전에는 단일 v4 지원 라이브러리가 있었습니다. 이 라이브러리는 효율성을 개선하기 위해 여러 모듈로 분할되었습니다. 이전 버전과의 호환성을 위해, Gradle 스크립트에 support-v4
를 나열하면 앱에 모든 v4 모듈이 포함됩니다. 하지만 앱 크기를 줄이려면 앱에 필요한 특정 모듈만 나열하는 것이 좋습니다.
v4 compat 라이브러리
Context.obtainDrawable()
및 View.performAccessibilityAction()
과 같은 여러 프레임워크 API의 호환성 래퍼를 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-compat:28.0.0
v4 core-utils 라이브러리
AsyncTaskLoader
및 PermissionChecker
와 같은 여러 유틸리티 클래스를 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-core-utils:28.0.0
v4 core-ui 라이브러리
ViewPager
, NestedScrollView
, ExploreByTouchHelper
와 같은 다양한 UI 관련 구성요소를 구현합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-core-ui:28.0.0
v4 media-compat 라이브러리
MediaBrowser
및 MediaSession
을 비롯한 미디어 프레임워크 부분을 백포트합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-media-compat:28.0.0
v4 fragment 라이브러리
프래그먼트로 사용자 인터페이스 및 기능을 캡슐화하는 지원을 추가하여 애플리케이션에서 소형 및 대형 화면 기기 간에 조정되는 레이아웃을 제공할 수 있습니다. 이 모듈에는 compat, core-utils, core-ui 및 media-compat에 관한 종속 항목이 있습니다.
참고: v13 지원 라이브러리는 FragmentCompat
클래스를 제공합니다. v4 Fragment
클래스는 이후 플랫폼 버전에서 추가된 버그 수정을 제공하는 독립형 클래스인 반면, v13 FragmentCompat
클래스는 Fragment
클래스의 프레임워크 구현을 위한 호환성 심(shim)을 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-fragment:28.0.0
Multidex 지원 라이브러리
이 라이브러리는 여러 Dalvik Executable(DEX) 파일을 사용하여 앱을 빌드할 수 있는 지원 기능을 제공합니다. multidex 구성을 사용하려면 65,536개 이상의 메서드를 참조하는 앱이 필요합니다. multidex 사용에 관한 자세한 내용은 64K개 이상의 메서드로 앱 빌드를 참고하세요.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:multidex:1.0.0
v7 지원 라이브러리
이 라이브러리는 특정 기능 집합을 제공하며, 상호 독립적으로 애플리케이션에 포함할 수 있습니다.
v7 appcompat 라이브러리 Android Jetpack의 구성요소.
참고: appcompat 라이브러리는 Android Jetpack 구성요소인 AndroidX 라이브러리로 이전했습니다. Sunflower 데모 앱에서 사용 예를 확인하세요.
이 라이브러리는 작업 모음 사용자 인터페이스 디자인 패턴 지원 기능을 추가합니다. 이 라이브러리에는 머티리얼 디자인 사용자 인터페이스 구현 지원 기능이 포함됩니다.
참고: 이 라이브러리는 v4 지원 라이브러리에 종속됩니다.
다음은 v7 appcompat 라이브러리에 포함된 몇몇 핵심 클래스입니다.
ActionBar
- 작업 모음 사용자 인터페이스 패턴의 구현을 제공합니다. 작업 모음 사용에 관한 자세한 내용은 작업 모음 개발자 가이드를 참고하세요.AppCompatActivity
- 지원 라이브러리 작업 모음 구현을 사용하는 활동의 기본 클래스로 사용할 수 있는 애플리케이션 활동 클래스를 추가합니다.AppCompatDialog
- AppCompat 테마 대화상자의 기본 클래스로 사용할 수 있는 대화상자 클래스를 추가합니다.ShareActionProvider
- 작업 모음에 포함할 수 있는 표준화된 공유 작업 (예: 이메일 또는 소셜 애플리케이션에 게시) 지원 기능을 추가합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:appcompat-v7:28.0.0
v7 cardview 라이브러리
이 라이브러리는 CardView
위젯 지원 기능을 추가합니다. 이 위젯을 사용하면 모든 앱에서 일관된 모양의 카드 내에 정보를 표시할 수 있습니다. 이 카드는 머티리얼 디자인 구현에 유용하며 TV 앱용 레이아웃에 광범위하게 사용됩니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:cardview-v7:28.0.0
v7 gridlayout 라이브러리
Android 지원 라이브러리를 다운로드하면 이 라이브러리는 GridLayout
클래스 지원 기능을 추가합니다. 이 클래스를 통해 직사각형 셀의 그리드를 사용하여 사용자 인터페이스 요소를 정렬할 수 있습니다.
v7 gridlayout 라이브러리 API에 관한 자세한 내용은 API 참조의 android.support.v7.widget
패키지를 확인하세요.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:gridlayout-v7:28.0.0
v7 mediarouter 라이브러리
이 라이브러리는 Google Cast를 지원하는 MediaRouter
, MediaRouteProvider
및 관련 미디어 클래스를 제공합니다.
일반적으로 v7 mediarouter 라이브러리의 API는 현재 기기에서 외부 화면, 스피커 및 기타 대상 기기로 미디어 채널 및 스트림의 라우팅을 제어하는 수단을 제공합니다. 이 라이브러리에는 앱별 미디어 경로 제공자를 게시하고 대상 기기를 검색 및 선택하고 미디어 상태를 확인하는 등의 용도를 위한 API가 포함되어 있습니다. v7 mediarouter 라이브러리 API에 관한 자세한 내용은 API 참조의 android.support.v7.media
패키지를 확인하세요.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:mediarouter-v7:28.0.0
지원 라이브러리 r18에 도입된 v7 mediarouter 라이브러리 API는 이후 버전의 지원 라이브러리에서 변경될 수 있습니다. 현재 Google Cast와 함께만 라이브러리를 사용하는 것이 좋습니다.
v7 palette 라이브러리
v7 palette 지원 라이브러리에는 이미지에서 눈에 띄는 색상을 추출할 수 있는 Palette
클래스가 포함되어 있습니다. 예를 들어 음악 앱에서 Palette
객체를 사용하여 앨범 표지에서 주요 색상을 추출하고 이 색상을 혼합하여 노래 제목 카드를 만들 수 있습니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:palette-v7:28.0.0
v7 recyclerview 라이브러리
recyclerview 라이브러리는 RecyclerView
클래스를 추가합니다. 이 클래스는 제한된 데이터 항목 창을 제공하여 대규모 데이터 집합을 효율적으로 표시하는 뷰인 RecyclerView 위젯을 지원합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:recyclerview-v7:28.0.0
v7 Preference 지원 라이브러리
preference 패키지는 사용자가 UI 설정을 수정할 수 있도록 CheckBoxPreference
및 ListPreference
와 같은 환경설정 객체 추가를 지원하는 API를 제공합니다.
v7 환경설정 라이브러리는 Preference.OnPreferenceChangeListener
및 Preference.OnPreferenceClickListener
와 같은 인터페이스와 CheckBoxPreference
및 ListPreference
와 같은 클래스에 대한 지원을 추가합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:preference-v7:28.0.0
v8 지원 라이브러리
이 라이브러리는 특정 기능 집합을 제공하며, 다른 라이브러리와 독립적으로 애플리케이션에 포함할 수 있습니다.
v8 renderscript 라이브러리
이 라이브러리는 RenderScript 계산 프레임워크 지원 기능을 추가합니다. 이러한 API는 android.support.v8.renderscript
패키지에 포함되어 있습니다. 이러한 API를 애플리케이션에 포함하는 방법은 다른 지원 라이브러리 API와는 매우 다릅니다. 애플리케이션에서 이러한 API를 사용하는 방법에 관한 자세한 내용은 RenderScript 개발자 가이드를 참고하세요.
참고: Android 스튜디오 및 Gradle 기반 빌드에서는 RenderScript를 지원 라이브러리와 함께 사용할 수 있습니다. renderscript 라이브러리는 build-tools/$VERSION/renderscript/
폴더에 있습니다.
다음 예는 이 라이브러리의 Gradle 빌드 스크립트 속성을 보여줍니다.
defaultConfig { renderscriptTargetApi 18 renderscriptSupportModeEnabled true }
v13 지원 라이브러리
이 라이브러리는 (FragmentCompat
) 클래스 및 추가 프래그먼트 지원 클래스와 함께 프래그먼트 사용자 인터페이스 패턴 지원 기능을 추가합니다. 프래그먼트에 관한 자세한 내용은 프래그먼트 개발자 가이드를 참고하세요. v13 지원 라이브러리 API에 관한 자세한 내용은 API 참조의 android.support.v13
패키지를 확인하세요.
참고: v4 프래그먼트 라이브러리는 Fragment
클래스를 제공합니다. v4 Fragment
클래스는 이후 플랫폼 버전에서 추가된 버그 수정을 제공하는 독립형 클래스인 반면, v13 FragmentCompat
클래스는 Fragment
클래스의 프레임워크 구현을 위한 호환성 심(shim)을 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-v13:28.0.0
v14 Preference 지원 라이브러리
android.support.v14.preference
패키지는 MultiSelectListPreference
및 PreferenceFragment
와 같은 클래스와 함께 PreferenceFragment.OnPreferenceStartFragmentCallback
및 PreferenceFragment.OnPreferenceStartScreenCallback
과 같은 환경설정 인터페이스 지원을 추가하는 API를 제공합니다. v14 Preference 지원 라이브러리 API에 관한 자세한 내용은 API 참조의 preference 패키지를 참고하세요.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:preference-v14:28.0.0
TV용 v17 Preference 지원 라이브러리
android.support.v17.preference
패키지는 LeanbackListPreferenceDialogFragment.ViewHolder.OnItemClickListener
인터페이스 지원을 비롯한 TV 기기의 환경설정 인터페이스와 BaseLeanbackPreferenceFragment
및 LeanbackPreferenceFragment
와 같은 클래스를 제공하는 API를 제공합니다. v17 Preference 지원 라이브러리 API에 관한 자세한 내용은 API 참조의 preference 패키지를 참고하세요.
이 패키지에는 API 레벨 17 이상이 필요합니다. 이 라이브러리의 Gradle 빌드 스크립트 종속 항목 식별자는 다음과 같습니다.
com.android.support:preference-leanback-v17:28.0.0
v17 Leanback 라이브러리
android.support.v17.leanback
패키지는 TV 기기에서 사용자 인터페이스 빌드를 지원하는 API를 제공합니다. 또한 TV 앱을 위한 여러 가지 중요한 위젯을 제공합니다. 몇몇 주목할 만한 클래스는 다음과 같습니다.
BrowseFragment
- 미디어 항목의 카테고리와 행을 둘러볼 수 있는 기본 레이아웃을 만들기 위한 프래그먼트입니다.DetailsFragment
- Leanback 세부정보 화면의 래퍼 프래그먼트입니다.PlaybackOverlayFragment
- 재생 컨트롤 및 관련 콘텐츠를 표시하기 위한DetailsFragment
의 서브클래스입니다.SearchFragment
- 검색을 처리하는 프래그먼트입니다. 프래그먼트는 사용자의 검색 요청을 수신하여 애플리케이션이 제공하는SearchResultProvider
로 전달합니다.SearchResultProvider
는 검색 결과를SearchFragment
로 반환하며 여기에서RowsFragment
로 렌더링합니다.
이 패키지에는 API 레벨 17 이상이 필요합니다. 이 라이브러리의 Gradle 빌드 스크립트 종속 항목 식별자는 다음과 같습니다.
com.android.support:leanback-v17:28.0.0
벡터 드로어블 라이브러리
정적 벡터 그래픽 지원 기능을 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속 항목 식별자는 다음과 같습니다.
com.android.support:support-vector-drawable:28.0.0
애니메이션 벡터 드로어블 라이브러리
애니메이션 벡터 그래픽 지원 기능을 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속 항목 식별자는 다음과 같습니다.
com.android.support:animated-vector-drawable:28.0.0
주석 지원 라이브러리
Annotation 패키지는 앱에 주석 메타데이터 추가를 지원하는 API를 제공합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:support-annotations:28.0.0
디자인 지원 라이브러리
Design 패키지는 앱에 머티리얼 디자인 구성요소와 패턴 추가를 지원하는 API를 제공합니다.
디자인 지원 라이브러리는 탐색 창, 플로팅 작업 버튼 (FAB), 스낵바, 탭 등 앱 개발자가 사용하는 다양한 머티리얼 디자인 구성요소 및 패턴 지원 기능을 추가합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:design:28.0.0
맞춤 탭 지원 라이브러리
Custom Tabs 패키지는 앱에서 맞춤 탭 추가 및 관리를 지원하는 API를 제공합니다.
맞춤 탭 지원 라이브러리는 맞춤 탭 서비스, 맞춤 탭 콜백과 같은 다양한 클래스 지원 기능을 추가합니다.
이 패키지에는 API 레벨 15 이상이 필요합니다. 이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:customtabs:28.0.0
퍼센트 지원 라이브러리
Percent 패키지는 앱에 비율 기반 측정기준 추가 및 관리를 지원하는 API를 제공합니다.
참고: 26.0.0 출시부터는 퍼센트 지원 라이브러리가 지원 중단됩니다.
이 모듈의 클라이언트는 SDK Manager에서 별도의 아티팩트로 제공되는 새로운 ConstraintLayout
위젯으로 이전해야 합니다.
Percent 지원 라이브러리는 PercentLayoutHelper.PercentLayoutParams 인터페이스와 PercentFrameLayout 및 PercentRelativeLayout과 같은 다양한 클래스 지원 기능을 추가합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:percent:28.0.0
ExifInterface 지원 라이브러리
Exif 태그는 방향, 날짜 및 시간, 카메라 정보, 위치 등의 정보를 JPEG 또는 RAW 파일에 직접 저장합니다. ExifInterface
클래스는 JPEG 및 원시 (DNG, CR2, NEF, NRW, ARW, RW2, ORF, PEF, SRW, RAF) 형식 파일에서 Exif 정보 읽기 및 JPEG 이미지 파일에 Exif 정보 설정 지원 기능을 분리합니다.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:exifinterface:28.0.0
TV용 앱 추천 지원 라이브러리
App Recommendation 패키지는 TV 기기에서 실행되는 앱에 콘텐츠 추천을 추가할 수 있는 API를 제공합니다.
앱 라이브러리는 ContentRecommendation.ContentMaturity와 같은 주석과 ContentRecommendation 및 RecommendationExtender와 같은 다양한 클래스 지원 기능을 추가합니다.
이 패키지에는 API 수준 21 이상이 필요합니다. 이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:recommendation:28.0.0
Wear UI 라이브러리
이 라이브러리에는 Wear 앱의 사용자 인터페이스를 빌드하기 위한 API가 있습니다. 이 API는 android.support.wear.widget 패키지에서 사용할 수 있으며 웨어러블 지원 라이브러리에서 상응하는 API를 대체합니다.
자세한 내용은 Wear UI 라이브러리 사용을 참고하세요.
이 라이브러리의 Gradle 빌드 스크립트 종속성 식별자는 다음과 같습니다.
com.android.support:wear:28.0.0