AppCompat

プラットフォームの古い API バージョン(多くの API がマテリアル デザインを使用)で新しい API にアクセスできるようにします。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2024 年 5 月 29 日 1.7.0 - - -

依存関係の宣言

AppCompat への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    def appcompat_version = "1.7.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"
}

Kotlin

dependencies {
    val appcompat_version = "1.7.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 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

バージョン 1.7

バージョン 1.7.0

2024 年 5 月 29 日

androidx.appcompat:appcompat:1.7.0androidx.appcompat:appcompat-resources:1.7.0 がリリースされました。バージョン 1.7.0 に含まれる commit については、こちらをご覧ください。

1.6.0 以降の重要な変更

  • AppCompatDialogViewTree API を介してダイアログのデコレーション ビューに LifecycleOwnerSavedStateRegistryOwnerOnBackPressedDispatcherOwner を正しく設定するようになりました。これにより、AppCompatDialog 内で ComposeView をホストするときの問題が解決します。
  • ビューからディスパッチャを取得できるように、AppCompatActivityViewTreeOnBackPressedDispatcherOwner を設定するようになりました。
  • SupportMenuInflater のパフォーマンスが大幅に向上しました。
  • Locale.getDefault() がコールド スタート後にシステム ロケールを返すようになりました。
  • LinearLayoutCompat がマージン レイアウト パラメータを保持するようになりました。

依存関係の更新

  • AppCompat が Activity 1.7.0 に依存するようになりました。
  • AppCompat が Fragment バージョン 1.5.4 に依存するようになりました。

バージョン 1.7.0-rc01

2024 年 5 月 14 日

androidx.appcompat:appcompat:1.7.0-rc01androidx.appcompat:appcompat-resources:1.7.0-rc01 がリリースされました。バージョン 1.7.0-rc01 に含まれる commit については、こちらをご覧ください。

バージョン 1.7.0-beta01

2024 年 5 月 1 日

androidx.appcompat:appcompat:1.7.0-beta01androidx.appcompat:appcompat-resources:1.7.0-beta01 がリリースされました。バージョン 1.7.0-beta01 に含まれる commit については、こちらをご覧ください。

バージョン 1.7.0-alpha03

2023 年 7 月 26 日

androidx.appcompat:appcompat:1.7.0-alpha03androidx.appcompat:appcompat-resources:1.7.0-alpha03 がリリースされました。バージョン 1.7.0-alpha03 に含まれる commit については、こちらをご覧ください

新機能

  • アクティビティ以外のコンテキストでアプリごとのロケールを取得できるようになりました(I58e753)。この機能用に、次の 4 つの新しい API が追加されました。

    • LocaleManagerCompat.getApplicationLocales(): デベロッパーがアプリごとのロケールをアクティビティのスコープ外にする場合。

    • ContextCompat.getString(): アプリごとのロケールに基づいてローカライズされた文字列を返します。

    • ContextCompat.getContextForLanguage(): このメソッドによって返されるコンテキストは、アプリごとのロケールに従います。

    • ConfigurationCompat.setLocales(): 上記の API の場合、構成のロケールを設定します。

その他の API の変更

  • setLineHeight(unit, lineHeight)TextView compat クラスに追加しました。(Ia9fa9
  • setLineHeight(unit, lineHeight)TextView compat クラスに追加しました。(Ib2ee1
  • setLineHeight(unit, lineHeight)TextView compat クラスに追加しました。(I15716

バグの修正

  • AppCompatDialogViewTree API を介してダイアログのデコレーション ビューに LifecycleOwnerSavedStateRegistryOwnerOnBackPressedDispatcherOwner を正しく設定するようになりました。これにより、AppCompatDialog 内で ComposeView をホストするときの問題が解決します。AppCompat が Activity 1.7.0 に依存するようになりました。(Ib28abb/261314581
  • SupportMenuInflater のパフォーマンスを大幅に改善しました。(I0b087

バージョン 1.7.0-alpha02

2023 年 2 月 8 日

androidx.appcompat:appcompat:1.7.0-alpha02androidx.appcompat:appcompat-resources:1.7.0-alpha02 がリリースされました。バージョン 1.7.0-alpha02 に含まれる commit については、こちらをご覧ください

バグの修正

  • AppCompatDelegate.getLocaleManagerForApplication() でのメモリリークを修正しました。(44b57fd
  • AppCompat が Fragment バージョン 1.5.4 に依存するようになりました。(I54dcd

バージョン 1.7.0-alpha01

2022 年 10 月 5 日

androidx.appcompat:appcompat:1.7.0-alpha01androidx.appcompat:appcompat-resources:1.7.0-alpha01 がリリースされました。バージョン 1.7.0-alpha01 に含まれる commit については、こちらをご覧ください。

バグの修正

  • ビューからディスパッチャを取得できるように、AppCompatActivityViewTreeOnBackPressedDispatcherOwner を設定するようになりました。(I1a115b/235416503
  • Locale.getDefault() がコールド スタート後にシステム ロケールを返すようになりました。(I6a94b
  • LinearLayoutCompat がマージン レイアウト パラメータを保持するようになりました。(Id2af4

バージョン 1.6.1

バージョン 1.6.1

2023 年 2 月 8 日

androidx.appcompat:appcompat:1.6.1androidx.appcompat:appcompat-resources:1.6.1 がリリースされました。バージョン 1.6.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • AppCompatDelegate.getLocaleManagerForApplication() でのメモリリークを修正しました。(44b57fd

バージョン 1.6.0

バージョン 1.6.0

2023 年 1 月 11 日

androidx.appcompat:appcompat:1.6.0androidx.appcompat:appcompat-resources:1.6.0 がリリースされました。バージョン 1.6.0 に含まれる commit については、こちらをご覧ください

1.5.0 以降の重要な変更

  • アプリケーションのロケールをカスタマイズするためのサポートを追加しました。詳しくは、AppCompatDelegate.setApplicationLocales(LocaleListCompat) をご覧ください。Android 13 で利用可能な新しい言語ごとの設定 API の下位互換性を提供します。
  • Android 13(Tiramisu、API レベル 33)SDK に合わせて null 可能性を更新しました。
  • DrawableWrapperDrawableContainerStateListDrawable の compat クラスを公開 API のサーフェスに追加しました。

バージョン 1.6.0-rc01

2022 年 9 月 7 日

androidx.appcompat:appcompat:1.6.0-rc01androidx.appcompat:appcompat-resources:1.6.0-rc01 がリリースされました。バージョン 1.6.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • ビューからディスパッチャを取得できるように、AppCompatActivityViewTreeOnBackPressedDispatcherOwner を設定するようになりました。(I1a115b/235416503
  • バグの修正(onConfigurationChanged に渡された設定を上書き)を元に戻しました。この修正では、onConfigurationChanged を使って独自のカスタム設定を挿入するテストで問題が発生していました。

バージョン 1.6.0-beta01

2022 年 8 月 10 日

androidx.appcompat:appcompat:1.6.0-beta01androidx.appcompat:appcompat-resources:1.6.0-beta01 がリリースされました。バージョン 1.6.0-beta01 に含まれる commit については、こちらをご覧ください。

API の変更

  • DrawableWrapperDrawableContainerStateListDrawable の compat クラスを公開 API に移動しました。(I37f3eb/227789566
  • 非同期レイアウト インフレータ用の新しいファクトリを導入しました。(Ia657b

バグの修正

  • ToolbaronPrepareMenu() の呼び出しを、メニューの作成時に無条件に行うのではなく、メニューの表示前に行うようになりました。(I2a58db/232206677
  • AppCompat が、Lifecycle 2.5.1 および SavedState 1.2.0 に明示的に依存するようになりました。(I7e3e2
  • AppCompatDelegate の後方呼び出しコールバックのサポートと AppCompat 提供のツールバー実装を追加しました。(I24062
  • 1.5.0-beta01 の AppCompat API を確定しました。(I2a43db/236866227
  • 1.5.0-beta01 の AppCompat API を確定しました。(I2a43db/236866227

バージョン 1.6.0-alpha05

2022 年 6 月 15 日

androidx.appcompat:appcompat:1.6.0-alpha05androidx.appcompat:appcompat-resources:1.6.0-alpha05 がリリースされました。バージョン 1.6.0-alpha05 は非公開のプレリリース ブランチで開発されており、公開版の commit はありません。

API の変更

  • Tiramisu Beta 3 SDK の確定版 API サーフェスに合わせて null 可能性を更新しました
  • Tiramisu Beta 3 SDK に合わせて、minCompileSdk が 33 になりました

バージョン 1.6.0-alpha04

2022 年 5 月 18 日

androidx.appcompat:appcompat:1.6.0-alpha04androidx.appcompat:appcompat-resources:1.6.0-alpha04 がリリースされました。このライブラリは非公開のプレリリース ブランチを対象に開発されたため、commit ログはありません。

API の変更

  • MDC-Android で使用する SwitchCompat の幅制限をオーバーライドする API を追加

バグの修正

  • attachBaseConfig の外部で構成変更を行った場合のマネージド構成の回避

バージョン 1.6.0-alpha03

2022 年 4 月 27 日

androidx.appcompat:appcompat:1.6.0-alpha03androidx.appcompat:appcompat-resources:1.6.0-alpha03 がリリースされました。

このバージョンには、コンパイル時に Android 13 ベータ版 1 が必要です。また、今後のデベロッパー プレビューとのランタイム互換性は保証されていません。

新機能

  • AppCompatDelegate.setApplicationLocales() を使用してアプリ全体のカスタム言語を選択できるようになりました。API 33 以降のプラットフォーム実装にデリゲートします。

バージョン 1.6.0-alpha01

2022 年 2 月 23 日

androidx.appcompat:appcompat:1.6.0-alpha01androidx.appcompat:appcompat-resources:1.6.0-alpha01 がリリースされました。バージョン 1.6.0-alpha01 は内部ブランチからビルドされており、一般公開されている commit はありません。

このバージョンでは、Android Tiramisu DP1 がコンパイルに必要です。将来のデベロッパー プレビューとの実行時の互換性は保証されません。

新機能

  • アプリケーションのロケールをカスタマイズするためのサポートを追加しました。詳しくは、AppCompatDelegate.setApplicationLocales(LocaleListCompat) をご覧ください。Android 13 で利用可能な新しい言語ごとの設定 API の下位互換性を提供します。

バージョン 1.5.1

バージョン 1.5.1

2022 年 9 月 7 日

androidx.appcompat:appcompat:1.5.1androidx.appcompat:appcompat-resources:1.5.1 がリリースされました。バージョン 1.5.1 に含まれる commit については、こちらをご覧ください

依存関係の更新

バージョン 1.5.0

バージョン 1.5.0

2022 年 8 月 10 日

androidx.appcompat:appcompat:1.5.0androidx.appcompat:appcompat-resources:1.5.0 がリリースされました。バージョン 1.5.0 に含まれる commit については、こちらをご覧ください

1.4.0 以降の重要な変更

  • この安定版には、夜間モードの安定性の改善、バグの修正と AppCompat-backed テキスト ウィジェットの複合ドローアブルの色合い調整のサポート、API のユーザビリティ改善が含まれます。変更の詳細については、以前の 1.5.0 シリーズのリリースノートをご覧ください。

バージョン 1.5.0-rc01

2022 年 7 月 27 日

androidx.appcompat:appcompat:1.5.0-rc01androidx.appcompat:appcompat-resources:1.5.0-rc01 がリリースされました。バージョン 1.5.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • AppCompat のコンテキスト ラッパーがアプリケーション コンテキストのバッキング リソース実装を再利用し、アプリケーション コンテキストで uiMode が上書きされる問題を修正しました。(Idf9d5

バージョン 1.5.0-beta01

2022 年 7 月 13 日

androidx.appcompat:appcompat:1.5.0-beta01androidx.appcompat:appcompat-resources:1.5.0-beta01 がリリースされました。バージョン 1.5.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • デフォルトのスイッチ幅調整を無効にするためのオーバーライド可能なフラグを追加しました。(I37cb7
  • @FloatRange アノテーションをつまみ位置取得 API に追加しました(If524c
  • 不足していた null 可能性アノテーションを AnimatedStateListDrawableCompat に追加しました(Ieb4ec

バグの修正

  • 1.5.0-beta01 の AppCompat API を確定しました。(I2a43db/236866227
  • ActionMenuItemViewclassName 値を Button として扱うように変更します(I5ee1c

バージョン 1.5.0-alpha01

2022 年 4 月 6 日

androidx.appcompat:appcompat:1.5.0-alpha01androidx.appcompat:appcompat-resources:1.5.0-alpha01 がリリースされました。バージョン 1.5.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • スイッチのつまみの位置をサブクラスに公開する新しい API を追加しました。(I9bfb4
  • Tiramisu DP2 と一致するよう null 可能性を更新しました。(I0cbb7
  • TextView から導出されるウィジェットに複合ドローアブルの色合い調整をバックポートしました。(Idf98cb/165822337
  • OnBackPressedDispatcher との互換性を確保するために、AppCompatDialogComponentDialog を拡張できるようになりました。(Id9b91b/217620781
  • SearchView.onQueryRefine() が保護された公開設定になり、オーバーライドできるようになりました。(I6cce0b/212882845

バグの修正

  • AppCompat ToolbarMenuHostHelperonPrepareMenu() API を呼び出すようになりました。(I9b9b5b/227376894
  • AppCompatEditTextAppCompatAutoCompleteEditTextAppCompatMultiAutoCompleteEditText は、XML で設定されている場合にコンストラクタ内の clickable または longClickable をリセットしなくなります。(Ic5066b/221094907
  • AppCompatEditTextAppCompatAutoCompleteTextViewAppCompatMultiAutoCompleteTextView は、コンストラクタ中にオーバーライドされた setKeyListener を呼び出さなくなります。(I5c13ab/208480173
  • Appcompat は、setKeyListener に渡される NumberKeyListener のインスタンスをラップしなくなります。これにより、TextViewNumberKeyListeners でロケールを正しく設定できます。(Ibf113b/207119921
  • AppCompat 1.4.0 で導入されたすべての NumberKeyListener サブクラスで、句読点などの予期しない文字の入力ができる問題を修正しました。(Iede7ab/207119921

バージョン 1.4.2

バージョン 1.4.2

2022 年 6 月 1 日

androidx.appcompat:appcompat:1.4.2androidx.appcompat:appcompat-resources:1.4.2 がリリースされました。バージョン 1.4.2 に含まれる commit については、こちらをご覧ください

バグの修正

  • アクションバーが作成される前に AppCompatDelegateImplensureSubDecor の内部呼び出しを行う際のクラッシュを修正しました。(aosp/2048349b/226648941

バージョン 1.4.1

2022 年 1 月 12 日

androidx.appcompat:appcompat:1.4.1androidx.appcompat:appcompat-resources:1.4.1 がリリースされました。バージョン 1.4.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • AppCompatEditTextAppCompatAutoCompleteTextViewAppCompatMultiAutoCompleteTextView は、コンストラクタ中にオーバーライドされた setKeyListener を呼び出さなくなります。(I5c13ab/208480173
  • Emoji2NumberKeyListener のインスタンスをラップしなくなります。これにより、textview でロケールを設定できます。
    • Appcompat は、setKeyListener に渡される NumberKeyListener のインスタンスをラップしなくなります。これにより、TextViewNumberKeyListeners でロケールを正しく設定できます。(Ibf113b/207119921
  • appcompat 1.4.0 で導入されたすべての NumberKeyListener サブクラスで、句読点などの予期しない文字の入力ができる問題を修正しました(b/207119921)(Iede7ab/207119921

バージョン 1.4.0

バージョン 1.4.0

2021 年 11 月 17 日

androidx.appcompat:appcompat:1.4.0androidx.appcompat:appcompat-resources:1.4.0 がリリースされました。バージョン 1.4.0 に含まれる commit については、こちらをご覧ください

1.3.0 以降の重要な変更

  • ライブラリは Java 8 言語レベルをターゲットとしています
  • 更新可能な絵文字のサポートは、androidx.emoji2 ライブラリを介してデフォルトで有効になっています
  • Android Studio の Layout Inspector における属性検査を改善しました。(I02d55
  • AppCompat リソース読み込みバックポートに、ネストされた色合い調整済みリソースとベクター型ドローアブルのサポートを追加しました。ただし、バックポートが有効になっている場合、アプリはカスタム Resources オブジェクトで getDrawable() をオーバーライドできないことにご注意ください。(Ia6b03b/176129022
  • CheckedTextView の着色可能な背景とチェックマークをバックポートしました(I8575c

バージョン 1.4.0-rc01

2021 年 10 月 27 日

androidx.appcompat:appcompat:1.4.0-rc01androidx.appcompat:appcompat-resources:1.4.0-rc01 がリリースされました。バージョン 1.4.0-rc01 に含まれる commit については、こちらをご覧ください。

バージョン 1.4.0-beta01

2021 年 9 月 29 日

androidx.appcompat:appcompat:1.4.0-beta01androidx.appcompat:appcompat-resources:1.4.0-beta01 がリリースされました。バージョン 1.4.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • AndroidX AppCompat の ToolbarMenuHost になり、MenuProvider を管理できるようになりました。(I5cd95

バグの修正

  • AppCompatProgressBar による layer-list 進行状況バーの処理を修正しました。(I6ece3b/142004509
  • AppCompatEditTextandroid:digits を正しく保持するようになりました。これにより、AppCompat 1.4.0-alpha03 で発生したバグ 193047889 が解決されます。(I4b4fcb/193047889
  • OnReceiveContentListener SDK を統合し、lib API をサポートしました。(Ic6914b/173814913

バージョン 1.4.0-alpha03

2021 年 6 月 30 日

androidx.appcompat:appcompat:1.4.0-alpha03androidx.appcompat:appcompat-resources:1.4.0-alpha03 がリリースされました。バージョン 1.4.0-alpha03 に含まれる commit については、こちらをご覧ください

新機能

  • ライブラリは Java 8 言語レベルをターゲットとしています
  • さらに多くの TextView サブクラスに対する emoji2 のサポートを追加します(AppCompatMultiAutoCompleteTextViewAppCompatAutoCompleteTextViewAppCompatRadioButtonAppCompatCheckBox)。

API の変更

  • View.performReceiveContent を使用して InputConnection.commitContent への IME 呼び出しを処理するように InputConnection を設定する API を追加しました。(I3a2ad
  • AppCompatMultiAutoCompleteTextView に EmojiCompat のサポートを追加します(Ifece0
  • AppCompatAutoCompleteTextView に EmojiCompat のサポートを追加します(Ia1f4b
  • AppCompatRadioButton に EmojiCompat のサポートを追加します(If08af
  • AppCompatCheckBox に EmojiCompat のサポートを追加します(I2b3bc
  • AppCompatEditText で null の KeyListener を許可します。これにより、1.4-alpha01 で AppCompatEditText に追加された null 以外のアノテーションが取り消され、null が渡されたときに以前の動作が復元されます。(I21482b/189559345
  • プラットフォーム API と同等の PopupMenu.setForceShowIcon を追加します(I43bb3b/182789798

バグの修正

  • XML で指定された inputType をリセットしてバリエーションを削除する AppCompatEditText のバグを修正します。このバグは AppCompat 1.4.0-alpha01 以来のバグです。(I9df36b/191061070

バージョン 1.4.0-alpha02

2021 年 6 月 2 日

androidx.appcompat:appcompat:1.4.0-alpha02androidx.appcompat:appcompat-resources:1.4.0-alpha02 がリリースされました。バージョン 1.4.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • レイアウト ID を受け取る AppCompatDialogFragment コンストラクタを追加しました。(Icbf22b/188119987
  • Layout Inspector のサポートを改善しました。(I02d55
  • emoji2-views-helper 内のパッケージの名前を androidx.emoji2.viewsintegration に変更しました。これは AppCompat 1.4.0-alpha01 の互換性を破る変更であり、アプリでは、AppCompat の依存関係が新しい Emoji2 バージョンを使用するように更新されていることを確認する必要があります。(Ie8397

バグの修正

  • 停止されたアクティビティが、AppCompat で計測可能にされた夜間モードの変更から、構成変更を受信しない問題を修正しました。(I8fa8fb/188681415
  • XML で android:focusable="false" が指定されていてもビューにフォーカスできるという AppCompatEditText のバグを修正しました(AppCompat 1.4.0-alpha01 以来のバグ)(Ib9412

バージョン 1.4.0-alpha01

2021 年 5 月 18 日

androidx.appcompat:appcompat:1.4.0-alpha01androidx.appcompat:appcompat-resources:1.4.0-alpha01 がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • さまざまな AppCompat ウィジェットに EmojiCompat のサポートを統合しました。(Id409bIf7a1aIc262dIb5f4aI4fb3c
  • AppCompat リソース読み込みバックポートに、ネストされた色合い調整済みリソースとベクター型ドローアブルのサポートを追加しました。ただし、バックポートが有効になっている場合、アプリはカスタム Resources オブジェクトで getDrawable() をオーバーライドできないことにご注意ください。(Ia6b03b/176129022
  • Layout Inspector のサポートを改善しました。(I6d771

バグの修正

  • ウィンドウ コールバックを設定した後で setSupportActionBar を呼び出すと、コールバックが上書きされる問題を修正しました。(Ie43eeb/186791590
  • SDK 29 および 30 で、ドローアブル キャッシュからクローン作成された ColorStateListDrawable リソースが状態の変更を受信するまでデフォルトの色を読み込まない問題の回避策を追加しました。(Iedb4b
  • AppCompat がサポートするビューで、null のカスタム選択アクション モードのコールバックを処理する際に、NPE が回避されるようにしました。(I033c7b/173435375

依存関係の更新

外部からの協力

  • CheckedTextView の着色可能な背景とチェックマークをバックポートしました。(I8575c

バージョン 1.3.1

バージョン 1.3.1

2021 年 7 月 21 日

androidx.appcompat:appcompat:1.3.1androidx.appcompat:appcompat-resources:1.3.1 がリリースされました。バージョン 1.3.1 に含まれる commit については、こちらをご覧ください

依存関係の更新

  • AppCompat は、Activity 1.2.4Fragment 1.3.6 に依存するようになりました。AppCompat 1.3.1 の使用時に、これらのリリースでの修正がデフォルトで組み込まれるようになります。(I8fbec

バージョン 1.3.0

バージョン 1.3.0

2021 年 5 月 18 日

androidx.appcompat:appcompat:1.3.0androidx.appcompat:appcompat-resources:1.3.0 がリリースされました。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください

1.2.0 以降の重要な変更

  • Lollipop より前のデバイスで <include> されたレイアウト全体にわたって android:theme 属性が伝搬される問題を修正しました。
  • 多数の PNG リソースを VectorDrawable に変換することにより、ライブラリのサイズを縮小しました。
  • OnReceiveContentListener での AppCompatEditText にドラッグ&ドロップ イベントのサポートを追加しました。
  • Android 11 のウィンドウ インセット処理の変更をサポートするための更新を行いました。
  • アイコン付きのメニュー項目に RTL のサポートを追加しました。
  • AppCompatEditText にリッチ コンテンツ(画像の貼り付けなど)を挿入する機能のサポートを追加しました。

  • 依存関係の更新: 新機能と修正をサポートするために、appcompat の推移的な依存関係の多くを更新しました。

    • Fragment 1.1.0Fragment 1.3.4 にアップデートしました。
    • Activity 1.0.0 を Activity 1.2.3 にアップデートしました。
    • Lifecycle 2.0.0Lifecycle 2.3.1 にアップデートしました。
    • Core 1.3.0 を Core 1.5.0 にアップデートしました。

バージョン 1.3.0-rc01

2021 年 3 月 24 日

androidx.appcompat:appcompat:1.3.0-rc01androidx.appcompat:appcompat-resources:1.3.0-rc01 がリリースされました。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • IME コンテンツの挿入を処理する際、早期に権限を取り消されることを防ぎます。

依存関係の更新

外部からの協力

  • Lollipop より前のデバイスで <include> レイアウト全体にわたって android:theme 属性が伝搬される問題を修正しました(Opera 社 Simon Bernerner 氏)

バージョン 1.3.0-beta01

2021 年 1 月 13 日

androidx.appcompat:appcompat:1.3.0-beta01androidx.appcompat:appcompat-resources:1.3.0-beta01 がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください

新機能

  • テーマレベルのアクション モードのドローアブルをベクターソースに置き換えました。 これにより、個々のアイコンのデザインが若干変化する場合があります。(I741a6

API の変更

  • AppCompatEditText のドラッグ&ドロップ(ドロップ イベント)と OnReceiveContentListener を統合しました。(Ib26c9b/175343405
  • OnReceiveContentListener と関連 API を更新しました。詳しくは、androidx.core ライブラリの変更点をご覧ください。(Ib4616b/173814913
  • widget.RichContentReceiverCompat を view.OnReceiveContentListener に移動しました。(Ifdab7b/173814913
  • 初期の周囲のテキストを提供、取得する API を EditorInfoCompat にバックポートしました。この API により、IME アプリが追加の IPC レイテンシを回避できます。(Ie3809

バージョン 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 に含まれる commit については、こちらをご覧ください

バグの修正

  • 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 リリースでの主な変更点を確認することを強くおすすめします。
    • AppCompatActivity は、Activity 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 に含まれる commit については、こちらをご覧ください

新機能

  • AppCompatActivity を拡張するアクティビティでの setActionBar の呼び出しにフラグを付ける新しい lint ルールを追加しました。
  • AppCompatActivity 内で View を使用する際の、Lifecycle 2.3.0-alpha01ViewTreeLifecycleOwnerLifecycle 2.3.0-alpha03ViewTreeViewModelStoreOwnerSavedState 1.1.0-alpha01ViewTreeSavedStateRegistryOwner のサポートを追加しました。(b/151603528aosp/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 に含まれる commit については、こちらをご覧ください

1.1.0 以降の主な変更

  • カスタム ロケールやフォント スケーリングなど、Configuration オーバーライドのユースケースのサポートを修正しました。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 に含まれる commit については、こちらをご覧ください

バグの修正

  • ダイアログから AppCompatDelegate.setDefaultNightMode を呼び出した場合に、アクティビティの再作成や新しいモードの適用ができないことがある、夜間モードに関連する問題を修正しました。(aosp/1348308b/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 に含まれる commit については、こちらをご覧ください

API の変更

  • 以前の SDK のアクティビティ間で構成変更のリークが発生するプラットフォームの問題のため、SDK バージョン 17 以上が必要であることを示すマークが AppCompatDelegate.setLocalNightMode に付けられました。

バグの修正

  • Activity.attachBaseContext より前に AppCompatDelegate.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 に含まれる commit については、こちらをご覧ください

新機能

  • 以下のシナリオで AppCompat の誤った使用について警告を生成する次の新しい lint ルールを追加しました。
    • 色の状態リストの読み込み: 下位互換性を確保するため ContextCompat API と AppCompatResources API の使用を提案します
    • ドローアブルの読み込み: 下位互換性を確保するため ContextCompat API と ResourcesCompat API の使用を提案します
    • アルファ属性を持つ色の状態リストの使用: 一部のプラットフォーム バージョンで外観が正しく表示されない原因となる android:alpha 属性の欠落に対して警告を生成します
    • 画像ビューの色合い調整: app:tint を使用しておらず、それが古いプラットフォーム バージョンで外観が正しく表示されない原因となる場合に警告を生成します
    • 複合ドローアブルの使用とテキストビューの色合い調整: 下位互換性を確保するために互換性を有する属性と API を使用することを提案します

バグの修正

  • ActionBarOverlayLayout(ウィンドウの装飾に関する操作)によって、WindowInset が正常にディスパッチされない問題を修正しました。
  • 古いバージョンのプラットフォームでのドローアブルとテキストの外観の色合い調整に関する問題を修正しました
  • 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 に含まれる commit については、こちらをご覧ください

バグの修正

  • アクション モードのステータス保護が誤ってナビゲーション バーに拡張され、誤った色が表示される問題を修正しました(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 に含まれる commit については、こちらをご覧ください

バグの修正

  • 長押しした場合に、AppCompat 1.1.0 によって WebView がクラッシュする問題を修正しました(b/141351441
  • API レベル 23 の複合ドローアブルに対する TextView のドローアブルの色合い調整を修正しました(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 に含まれる commit については、こちらをご覧ください

バグの修正

  • 厳格モードでブート対応チェックを有効にしている場合に PackageManager.getActivityInfo の呼び出しでクラッシュが発生しなくなりました。
  • AppCompatButton でのドローアブルの色合い調整を修正しました。
  • 以前のバージョンのプラットフォームでの色合い調整とテキスト外観を修正しました。

バージョン 1.1.0

バージョン 1.1.0

2019 年 9 月 5 日

androidx.appcompat:appcompat:1.1.0androidx.appcompat:appcompat-resources:1.1.0 がリリースされました。このバージョンに含まれる commit については、こちらをご覧ください。

1.0.0 以降の重要な変更

  • ダークモードの改善: MODE_NIGHT_AUTO と、現在時刻に基づくダークとライトの切り替えは、非推奨になりました。明示的な設定(MODE_NIGHT_AUTO_BATTERY)を使用することを検討してください。
  • Activity 1.0: AppCompatActivityFragment 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 がリリースされました。このバージョンに含まれる commit ついては、こちらをご覧ください。

バグの修正

  • 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 がリリースされました。このバージョンに含まれる commit については、こちらをご覧ください。

バグの修正

  • AppCompatDialog でレシーバをクリーンアップします(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 がリリースされました。このバージョンに含まれる commit については、こちらをご覧ください。

新機能

  • setDefaultNightMode() を呼び出すと、開始されているアクティビティが自動的に再作成されるようになりました。

バグの修正

  • DayNight モードに関する各種の修正を行いました。
  • ActionBar の背景の変更でアウトラインを無効にしました。
  • スピナー ウィジェットのスクロールを修正しました。
  • AlertDialog でオーバーライドされているカスタム設定のウィンドウの背景を修正しました。

バージョン 1.1.0-alpha04

2019 年 4 月 3 日

androidx.appcompat:appcompat:1.1.0-alpha04androidx.appcompat:appcompat-resources:1.1.0-alpha04 がリリースされました。このバージョンに含まれる commit については、こちらをご覧ください。

新機能

  • 新しい ThemeOverlay.AppCompat.DayNight テーマ ファミリーを追加しました。DayNight 機能を使用する場合はこれらを使用する必要があります。

API の変更

  • AppCompatActivity に、@LayoutRes int を受け取る 2 つ目のコンストラクタが追加されました。このコンストラクタは、AppCompatActivity クラスをアノテーションする以前の動作を @ContentView で置き換えます。この方法は、アプリとライブラリの両方のモジュールで機能します。(b/128352521

バグの修正

  • 内部依存関係を安定版に固定しました(可能な場合)。
  • プルダウン モードでの AppCompatSpinner のスクロールを修正しました。(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 の最初のリリースです。このバージョンに含まれる commit の完全なリストについては、こちらをご覧ください。

新機能

  • 新しい appcompat-resources ライブラリには、古いバージョンのプラットフォーム上でアプリによってドローアブル(ベクター型ドローアブルを含む)の読み込みと色合い調整を行うための API が含まれています。これは、以前 appcompat モジュールに含まれていた機能と同じですが、現在は、ウィジェット、ダイアログ、夜間モードなどを含むマテリアル デザインの全面的な appcompat のバックポートによるオーバーヘッドなしで使用できるようになりました。
  • DayNight モードのサポートに対する大規模な修正を行いました。
  • DayNight モードの新しい MODE_NIGHT_AUTO_BATTERY オプション。
  • AppCompatTextView でのドローアブルの色合い調整
  • テーマ付きの色状態リストを使用して、ツールバーのオーバーフローのスタイルを設定できるようになりました。
  • メニュー アイコンで、テーマ属性を参照する色を使用できるようになりました。
  • 新しい app:menu 属性をツールバーに設定して、インフレーション時にメニュー コンテンツを表示できるようになりました。

バグの修正

  • バージョン 21 における ImageView のデフォルトの色合い調整モードを修正しました。
  • デバイスの回転時におけるスピナー ポップアップの不正な消去操作を修正しました。
  • DayNight がマニフェストの 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
  • ツールバーの titleTextColorsubtitleTextColorColorStateList を使用できるようにし、setTitleTextColor メソッドと setSubtitleTextColor メソッドの 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 が app:drawableLeftCompatapp:drawableTopCompatapp:drawableRightCompatapp:drawableBottomCompatapp:drawableStartCompatapp:drawableEndCompat の各複合ドローアブルをサポートし、VectorDrawableCompat などのバックポートされたドローアブル タイプをサポートするようになりました。

  • 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 日

新機能