Google은 흑인 공동체를 위한 인종 간 평등을 진전시키기 위해 노력하고 있습니다. Google에서 어떤 노력을 하고 있는지 확인하세요.

AppCompat

이전 API 버전의 플랫폼에서 새 API에 액세스할 수 있습니다(대부분 머티리얼 디자인 사용).
최근 업데이트 현재 안정화 버전 다음 버전 후보 베타 버전 알파 버전
2020년 8월 19일 1.2.0 - - 1.3.0-alpha02

종속 항목 선언

Appcompat의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

dependencies {
    def appcompat_version = "1.2.0"

    implementation "androidx.appcompat:appcompat:$appcompat_version"
    // For loading and tinting drawables on older versions of the platform
    implementation "androidx.appcompat:appcompat-resources:$appcompat_version"
}

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참조하세요.

의견

제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 만들기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 표를 추가할 수 있습니다.

새 문제 만들기

자세한 내용은 Issue Tracker 문서를 참조하세요.

버전 1.3.0

버전 1.3.0-alpha02

2020년 8월 19일

androidx.appcompat:appcompat:1.3.0-alpha02androidx.appcompat:appcompat-resources:1.3.0-alpha02가 출시되었습니다. 버전 1.3.0-alpha02에 포함된 커밋을 확인하세요.

버그 수정

  • AppCompatRatingBar PNG 드로어블이 벡터 소스로 대체되었습니다. 이로 인해 개별 별표의 시각적 모양이 약간 변경될 수 있습니다. (I6b99d)
  • WindowInsetsCompat을 Android 11 API로 업데이트했습니다. (I3df9e)
  • 아이콘이 있는 메뉴 항목에서 RTL을 지원합니다. (I2f5c5)

종속 항목 업데이트

  • AppCompat에서는 종속 항목을 Fragment 1.1.0에서 Fragment 1.3.0-alpha08로 업데이트했습니다. Fragment 1.2.0 출시 노트를 검토하여 이전 Fragment 출시 버전에 도입된 주요 변경사항을 이해하는 것이 좋습니다.
  • AppCompat에서는 종속 항목을 Activity 1.0.0에서 Activity 1.2.0-alpha08로 업데이트했습니다. Activity 1.1.0 출시 노트를 검토하여 이전 Activity 출시 버전에 도입된 주요 변경사항을 이해하는 것이 좋습니다.
    • 이제 AppCompatActivityActivity 1.2.0-alpha08에 도입된 OnContextAvailableListener API를 사용하여 AppCompatDelegate를 설정합니다. AppCompatActivity의 서브클래스에 추가된 모든 리스너는 이 리스너 이후에 실행됩니다. (I513da)

버전 1.3.0-alpha01

2020년 5월 20일

androidx.appcompat:appcompat:1.3.0-alpha01androidx.appcompat:appcompat-resources:1.3.0-alpha01이 출시되었습니다. 버전 1.3.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

  • AppCompatActivity를 확장하는 활동에서 setActionBar 플래그 호출에 새 린트 규칙을 추가합니다.
  • AppCompatActivity 내에서 View를 사용할 때 수명 주기2.3.0-alpha01ViewTreeLifecycleOwner, 수명 주기2.3.0-alpha03ViewTreeViewModelStoreOwnerSavedState 1.1.0-alpha01ViewTreeSavedStateRegistryOwner 지원이 추가되었습니다. (b/151603528, aosp/1300264)
  • 리치 콘텐츠(예: 이미지 붙여넣기) 삽입을 위한 공통 API가 추가됩니다. 새 콜백은 앱이 구현할 수 있는 단일 API를 제공하여 리치 콘텐츠를 삽입할 수 있는 여러 방법을 지원합니다. 현재 이 API는 AppCompatEditText에만 추가되며 다음 코드 경로에 호출됩니다.
    • 클립보드에서 붙여넣습니다.
    • IME(InputConnection.commitContent)에서 콘텐츠를 삽입합니다. (I22bf7)

버그 수정

  • AppCompat 1.2.0-rc01에서: AppCompat은 더 이상 null 메뉴로 onMenuOpened()를 호출하지 않습니다. (b/142843126)
  • 테마 색상 속성을 참조하는 색상 상태 목록이 있는 텍스트 모양 스타일로 TextViewCompat.setTextAppearance를 호출할 때 이전 기기의 텍스트 링크 및 힌트 색상을 올바르게 결정합니다. (b/154702995)

버전 1.2.0

버전 1.2.0

2020년 8월 5일

androidx.appcompat:appcompat:1.2.0androidx.appcompat:appcompat-resources:1.2.0이 출시되었습니다. 버전 1.2.0에 포함된 커밋을 확인하세요.

1.1.0 이후 주요 변경사항

  • 맞춤 언어 및 글꼴 조정을 포함하여 구성 재정의 사용 사례에 관한 지원이 수정되었습니다. appcompat:1.2.0을 사용하여 재정의를 올바르게 구현하는 방법에 관한 예는 여기를 참조하세요.
  • AppCompatDelegate.attachBaseContext()가 지원 중단되었습니다. 이 메서드를 호출하거나 재정의하려면 대신 AppCompatDelegate.attachBaseContext2()를 사용하세요.
  • CollapsibleActionView가 지원 중단되었습니다. 이 인터페이스는 더 이상 필요하지 않습니다. 플랫폼에서 제공하는 android.view.CollapsibleActionView 인터페이스를 사용하세요.

버전 1.2.0-rc02

2020년 7월 22일

androidx.appcompat:appcompat:1.2.0-rc02androidx.appcompat:appcompat-resources:1.2.0-rc02가 출시되었습니다. 버전 1.2.0-rc02에 포함된 커밋을 확인하세요.

버그 수정

  • 대화 상자에서 AppCompatDelegate.setDefaultNightMode를 호출하면 종종 활동을 다시 만들고 새 모드를 적용하는 데 오류가 발생하는 야간 모드와 관련된 문제를 해결했습니다. (aosp/1348308, b/158923881)

버전 1.2.0-rc01

2020년 5월 14일

androidx.appcompat:appcompat:1.2.0-rc01androidx.appcompat:appcompat-resources:1.2.0-rc01이 출시되었습니다. 버전 1.2.0-rc01에 포함된 커밋을 확인하세요.

API 변경사항

  • AppCompatDelegate.setLocalNightMode가 이전 SDK의 활동 사이에 누출되는 구성 변경의 플랫폼 문제로 인해 SDK 버전 17 이상이 필요한 것으로 표시되었습니다.

버그 수정

  • 이제 Activity.attachBaseContextAppCompatDelegate.setLocalNightMode 이전에 호출될 수 있습니다.
  • 캐시된 인셋을 잘못 사용했던 ActionBarOverlayLayout 인셋 소비가 수정되었습니다.
  • AppCompat은 더 이상 null 메뉴로 onMenuOpened()를 호출하지 않습니다. (b/142843126)

버전 1.2.0-beta01

2020년 4월 1일

androidx.appcompat:appcompat:1.2.0-beta01androidx.appcompat:appcompat-resources:1.2.0-beta01이 출시되었습니다. 버전 1.2.0-beta01에 포함된 커밋을 확인하세요.

새로운 기능

  • 다음 시나리오에서 AppCompat의 잘못된 사용을 신고하는 다음과 같은 새로운 린트 규칙이 추가되었습니다.
    • 색상 상태 목록 로드: 이전 버전과의 호환성을 위해 ContextCompatAppCompatResources API 사용을 권장합니다.
    • 드로어블 로드: 이전 버전과의 호환성을 위해 ContextCompatResourcesCompat API 사용을 권장합니다.
    • 알파 속성이 있는 색상 상태 목록 사용: 일부 플랫폼 버전에서 잘못된 모양으로 연결되는 android:alpha 속성 누락을 신고합니다.
    • 이미지 뷰 색조 조정: app:tint를 사용하지 않아 이전 버전의 플랫폼에서 잘못 표시되는 문제를 신고합니다.
    • 복합 드로어블 사용 및 텍스트 뷰 색조 조정: 이전 버전과의 호환성을 위해 compat 속성 및 API 사용을 권장합니다.

버그 수정

  • ActionBarOverlayLayout(창 장식 작업)이 WindowInsets를 제대로 전달하지 못하는 문제가 해결되었습니다.
  • 이전 버전의 플랫폼에서 드로어블 및 텍스트 표시 색조 조정 문제가 해결되었습니다.
  • WebView를 길게 누르면 androidx.appcompat:appcompat:1.1.0이 WebView와 충돌하는 문제가 해결되었습니다(b/141351441).
  • 활동 시작시 기본 컨텍스트 조작 및 시스템 서비스 가져오기 문제에 대한 해결책이 구현되었습니다.

버전 1.2.0-alpha03

2020년 3월 4일

androidx.appcompat:appcompat:1.2.0-alpha03androidx.appcompat:appcompat-resources:1.2.0-alpha03이 출시되었습니다. 버전 1.2.0-alpha03에 포함된 커밋을 확인하세요.

버그 수정

  • 작업 모드 상태 가드가 탐색 메뉴로 잘못 확장되어 색상이 잘못되는 문제가 해결되었습니다.(Ia4a09
  • API 수준 23 이하에서 중지된 활동이 재개되지 않는 문제가 해결되었습니다.(I45201)

버전 1.2.0-alpha02

2020년 1월 29일

androidx.appcompat:appcompat:1.2.0-alpha02androidx.appcompat:appcompat-resources:1.2.0-alpha02이 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.

버그 수정

  • WebView를 길게 누르면 appcompat 1.1.0이 WebView와 충돌하는 문제가 해결되었습니다.(b/141351441)
  • API 수준 23에서 복합 드로어블과 관련하여 텍스트 뷰의 드로어블 색상 조정이 수정되었습니다.(aosp/1172194)
  • 기본 컨텍스트가 항상 래퍼가 되도록 했습니다.(aosp/1194355)
  • 더욱 스마트하게 기본 컨텍스트 구성을 수정하도록 개선했습니다.(aosp/1204543)
  • Robolectric 에 대해 createConfigurationContext() 사용을 중지했습니다.(aosp/1186218)

버전 1.2.0-alpha01

2019년 12월 4일

androidx.appcompat:appcompat:1.2.0-alpha01androidx.appcompat:appcompat-resources:1.2.0-alpha01이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.

버그 수정

  • 부팅 인식 확인을 사용 설정한 상태에서 엄격 모드를 사용하면 PackageManager.getActivityInfo 호출에 더 이상 오류가 발생하지 않습니다.
  • AppCompatButton의 드로어블 색조 조정 문제가 수정되었습니다.
  • 이전 버전의 플랫폼에서 색조 조정 및 텍스트 모양이 수정되었습니다.

버전 1.1.0

버전 1.1.0

2019년 9월 5일

androidx.appcompat:appcompat:1.1.0androidx.appcompat:appcompat-resources:1.1.0 버전이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

1.0.0 이후 중요 변경사항

  • 어두운 모드 개선: 현재 시간에 따른 MODE_NIGHT_AUTO 및 어둡게/밝게 전환이 이제 지원 중단됩니다. 명시적 설정 또는 MODE_NIGHT_AUTO_BATTERY 사용을 고려하세요.
  • Activity 1.0: AppCompatActivity는 이제 Fragment 1.1.0을 통해 Activity 1.0.0ComponentActivity에서 전이적으로 확장됩니다. 각 라이브러리의 변경사항에 관한 자세한 내용은 관련 출시 노트를 참조하세요.
  • AppCompatActivity LayoutId 생성자: 이제 AppCompatActivity의 서브클래스는 R.layout ID를 사용하는 AppCompatActivity의 생성자를 선택적으로 호출할 수 있으며 이 기능은 onCreate()setContentView()를 호출하는 대신 콘텐츠 뷰로 설정해야 하는 레이아웃을 나타냅니다. 그렇지만 서브클래스에 인수가 없는 생성자가 있어야 한다는 요구사항은 변경되지 않습니다.

버전 1.1.0-rc01

2019년 7월 2일

androidx.appcompat:appcompat:1.1.0-rc01androidx.appcompat:appcompat-resources:1.1.0-rc01 버전이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

버그 수정

  • 이제 DayNight에서 configChanges가 올바르게 적용됩니다. aosp/981105를 참조하세요.
  • 시작된 활동에서만 onConfigurationChanged를 호출합니다. aosp/987483을 참조하세요.

버전 1.1.0-beta01

2019년 6월 5일

androidx.appcompat:appcompat:1.1.0-beta01androidx.appcompat:appcompat-resources:1.1.0-beta01 버전이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

버그 수정

  • AppCompatDialogs에서 수신자를 정리해야 합니다. aosp/959376을 참조하세요.
  • 툴바에 buttonGravity=center_vertical 지원을 추가했습니다. b/130361721을 참조하세요.
  • 스피너 수평 오프셋을 수정했습니다. b/79477181을 참조하세요.

버전 1.1.0-alpha05

2019년 5월 7일

androidx.appcompat:appcompat:1.1.0-alpha05androidx.appcompat:appcompat-resources:1.1.0-alpha05 버전이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

새로운 기능

버그 수정

  • DayNight 모드의 다양한 문제를 수정했습니다.
  • ActionBar에서 백그라운드 변경 시 윤곽선을 무효화했습니다.
  • 스피너 위젯 스크롤 문제를 수정했습니다.
  • AlertDialog에서 맞춤 설정 창 배경이 재정의되는 문제를 수정했습니다.

버전 1.1.0-alpha04

2019년 4월 3일

androidx.appcompat:appcompat:1.1.0-alpha04androidx.appcompat:appcompat-resources:1.1.0-alpha04 버전이 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.

새로운 기능

  • ThemeOverlay.AppCompat.DayNight 테마 제품군이 추가되었습니다. DayNight 기능을 사용할 때 이러한 테마를 사용해야 합니다.

API 변경사항

  • 이제 AppCompatActivity에는 @LayoutRes int를 사용하는 두 번째 생성자가 포함되어 있으며 이 생성자는 @ContentView로 AppCompatActivity 클래스에 주석을 다는 이전 동작을 대체합니다. 이 접근법은 앱과 라이브러리 모듈 모두에서 적용됩니다. b/128352521을 참조하세요.

버그 수정

  • 가능한 상황에서는 내부 종속성을 안정화 버전에 고정했습니다.
  • 드롭다운 모드에서 AppCompatSpinnerscrolling 문제를 수정했습니다. b/124274573을 참조하세요.
  • DayNight에 필요한 때에만 applyOverrideConfiguration()을 호출합니다.

버전 1.1.0-alpha03

2019년 3월 13일

androidx.appcompat:appcompat:1.1.0-alpha03androidx.appcompat:appcompat-resources:1.1.0-alpha03 버전이 출시되었습니다. 이 버전은 appcompat-resources의 최초 출시입니다. 이 버전에 포함된 커밋의 전체 목록은 여기에서 확인할 수 있습니다.

새로운 기능

  • 새 appcompat-resources 라이브러리에는 앱에서 이전 버전 플랫폼의 드로어블(벡터 드로어블 포함)을 로드하고 색조를 조정하는 데 사용하는 API가 포함되어 있습니다. 이 기능은 이전에 appcompat 모듈에 포함된 기능과 동일하지만 이제 위젯, 대화상자, 야간 모드 등을 포함하는 머티리얼 디자인의 전체 appcompat 백포트 오버헤드 없이 사용할 수 있습니다.
  • DayNight 모드 지원과 관련한 주요 문제를 수정했습니다.
  • DayNight 모드를 위한 새 MODE_NIGHT_AUTO_BATTERY 옵션
  • AppCompatTextView의 드로어블 색조 조정
  • 이제 테마 색상 상태 목록으로 툴바 더보기 메뉴의 스타일을 지정할 수 있습니다.
  • 이제 메뉴 아이콘에서 테마 속성을 참조하는 색상을 사용할 수 있습니다.
  • 툴바에서 확장 시 메뉴 콘텐츠를 제공하는 새 app:menu 속성을 설정할 수 있습니다.

버그 수정

  • 버전 21에서 ImageView의 기본 색조 모드 관련 문제를 수정했습니다.
  • 기기를 회전할 때 스피너 팝업이 잘못 닫히던 문제를 수정했습니다.
  • DayNight가 manifest에서 configChanges를 준수하지 않는 문제를 수정했습니다.
  • MODE_NIGHT_FOLLOW_SYSTEM으로 전환되지 않던 문제를 수정했습니다. (b/111345020 참조)
  • WebView가 DayNight 리소스를 재설정하는 문제를 수정했습니다. b/37124582를 참조하세요.

버전 1.1.0-alpha02

2019년 2월 7일

androidx.appcompat:appcompat 1.1.0-alpha02 버전이 출시되었습니다.

새로운 기능

  • 리소스별 드로어블 처리를 후크로 추출했습니다. aosp/870976을 참조하세요.
  • titleTextColorsubtitleTextColor 툴바에서 ColorStateList를 사용하도록 허용하고 setTitleTextColorsetSubtitleTextColor 메서드의 ColorStateList 오버로드를 추가했습니다. aosp/867489를 참조하세요.

버그 수정

  • fontFamily가 API 24 이전에서 작동하지 않던 문제를 수정했습니다. aosp/807054를 참조하세요.
  • 활동이 AppCompatActivity에서 확장될 때 textFontWeight가 작동하지 않던 버그를 수정했습니다. aosp/847640을 참조하세요.
  • 대화상자 모드를 사용할 때 스피너 위젯 팝업 시 제목 텍스트에서 fontFamily에 지정된 글꼴을 사용하지 않던 버그를 수정했습니다. aosp/789994를 참조하세요.
  • AppCompatCheckBoxAppCompatRadioButton 위젯에서 배경 색조를 변경할 수 없던 버그를 수정했습니다. aosp/825160을 참조하세요.
  • AppCompat에서 android: list styles가 재정의되지 않던 버그를 수정했습니다. aosp/862350을 참조하세요.

버전 1.1.0-alpha01

2018년 12월 3일

새로운 기능

  • AppCompatTextView에서는 이제 VectorDrawableCompat과 같이 백포트된 드로어블 유형을 지원하는 app:drawableLeftCompat, app:drawableTopCompat, app:drawableRightCompat, app:drawableBottomCompat, app:drawableStartCompat, app:drawableEndCompat 복합 드로어블을 지원합니다.

  • AppCompatCheckBoxAppCompatRadioButton의 기본 드로어블에서는 이제 확인 상태 변경에 애니메이션 효과를 적용합니다.

API 변경사항

  • aosp/740385: ActionBarOverlayLayout은 이제 NestedScrollingParent2 및 NestedScrollingParent3을 구현하여 중첩 스크롤 3에서 최신 기능을 쉽게 활용할 수 있도록 해줍니다. 현재 개발자 코드가 ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int)을 재정의하는 경우 이 메서드는 더 이상 호출되지 않으므로 대신 ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[])을 재정의해야 합니다.

버전 1.0.2

버전 1.0.2

2018년 11월 7일

core-1.0.1appcompat-1.0.2의 버그 수정 출시입니다.

버그 수정

  • PrecomputedTextCompat이 RTL AppCompatTextView와 함께 사용될 때 비정상 종료되는 버그가 수정되었습니다. b/113070424를 참조하세요.

버전 1.0.0

버전 1.0.0

2018년 11월 7일

새로운 기능