このページでは、以前のサポート ライブラリ パッケージのリリースについて詳しく説明します。サポート ライブラリの最新リリースについては、サポート ライブラリの最新リビジョンをご覧ください。
リビジョン 26.0.0 Beta 2
(2017 年 6 月)
26.0.0-beta2 はプレリリース版である点にご注意ください。API サーフェスは変更される可能性があります。また、サポート ライブラリの最新の安定版の機能やバグ修正が含まれているとは限りません。
重要: サポート ライブラリは Google の Maven リポジトリから利用できるようになりました。SDK Manager からサポート リポジトリをダウンロードする必要はありません。詳細については、サポート ライブラリのセットアップをご覧ください。
新しい API
- 新しい
JobIntentService
クラス。デベロッパーはこれを使用して、Android O の新しいバックグラウンド実行制限に準拠する方法でタスクをスケジューリングできます。
API 差分
バグの修正
- Android O SDK の削除により、TextViews で斜体が失われる
- MediaBrowserServiceCompat に接続するときに null ポインタ例外が発生する
- TextInputLayout で onProvideAutofillStructure() にヒントを設定する必要がある
- O で TextView の自動サイズ調整を使用すると、スタック オーバーフローが発生する
リビジョン 26.0.0 Beta 1
(2017 年 5 月)
26.0.0-beta1 はプレリリース版である点にご注意ください。API サーフェスは変更される可能性があります。また、サポート ライブラリの最新の安定版の機能やバグ修正が含まれているとは限りません。
重要: サポート ライブラリは Google の Maven リポジトリから利用できるようになりました。SDK Manager からサポート リポジトリをダウンロードする必要はありません。詳細については、サポート ライブラリのセットアップをご覧ください。
重要な変更点
FragmentActivity.setSupportMediaController()
とFragmentActivity.getSupportMediaController()
が削除されました。新しい静的なMediaControllerCompat.setMediaController()
メソッドとMediaControllerCompat.getMediaController()
メソッドを使用してください。BottomNavigationView
は、すでに選択されているアイテムが選択されたときに、onNavigationItemSelected()
を呼び出すのではなく、onNavigationItemReselected()
を呼び出すようになりました。findViewById()
メソッドのすべてのインスタンスが、View
ではなく<T extends View> T
を返すようになりました。この変更による影響は次のとおりです。- これにより、既存のコードの戻り値の型が不明瞭になる可能性があります。たとえば、
findViewById()
の呼び出し結果を受け取るsomeMethod(View)
とsomeMethod(TextView)
の両方がある場合などです。 - Java 8 ソース言語を使用する場合、戻り値の型に制約がない場合(例:
assertNotNull(findViewById(...)).someViewMethod())
)は、View
への明示的なキャストが必要です。 - 非 final の
findViewById()
メソッドをオーバーライドする(Activity.findViewById()
など)場合、戻り値の型を更新する必要があります。
- これにより、既存のコードの戻り値の型が不明瞭になる可能性があります。たとえば、
新しい API
-
FragmentManager
とFragment
にはisStateSaved()
メソッドがあり、状態を失うことなくトランザクションが許可されるかどうかを照会できます。特に、トランザクションの実行前にonClick()
イベントを処理する場合にチェックできます。 - パスモーションは
AnimatedVectorDrawableCompat
でサポートされています。パス モーションを使用すると、1 つのオブジェクト アニメーターが 1 つのパスに基づいて 2 つのプロパティを同時に変更できます。パスは、アニメーターの XML でandroid:pathData
として指定されます。 - 物理ベースのアニメーション:
- 新しい
FlingAnimation
は、初期速度でのアニメーションをサポートし、速度を滑らかに下げます。 DynamicAnimation
のサブクラスは、あらゆるオブジェクトのカスタム プロパティのアニメーション化をサポートします。SpringAnimation
とFlingAnimation
の両方で、View
またはObject
を関連付けることなく、浮動小数点値をアニメーション化できるようになりました。
詳細については、スプリング アニメーションとフリング アニメーションのプレビュー ページをご覧ください。
- 新しい
-
XML でのフォント サポート:
-
ResourcesCompat.getFont
により、TextView.setTypeface()
で使用できるフォント リソース(フォント ファミリー XML を含む)を読み込むことができます。 - AppCompat を使用する場合、TextView は
android:fontFamily
XML 属性を使用して、フォント リソースまたはフォント ファミリー XML を指定できます。 - XML フォント ファミリーを使用して、スタイルと太さのバリエーションを持つフォント ファミリーを作成できます。(サポート ライブラリ クラスを使用してこれを行う場合は、
app:
属性とandroid:
属性を使用します)。
-
- ダウンロード可能フォント:
- 新しい
FontsContractCompat
を使用すると、フォントをアプリにバンドルする代わりに、フォント プロバイダにフォントをリクエストできます。 - フォントを XML でリクエストして、レイアウトで使用することもできます。
- 新しい
-
絵文字互換性ライブラリ:
-
EmojiCompat
は指定されたCharSequence
を処理してEmojiSpans
を追加できます。 -
EmojiTextView
とその他のウィジェット。絵文字を表示します。 -
FontRequestEmojiCompatConfig
: フォント プロバイダに絵文字フォントをリクエストします。
-
-
TextView の自動サイズ設定:
TextView
で自動サイズ設定を制御するTextViewCompat
の新しいメソッドと XML 属性。
- シークをサポートするリーンバック再生コントロール:
-
- SeekBar を使用して再生コントロールをレンダリングする新しい
PlaybackTransportRowPresenter
。 PlaybackTransportRowPresenter
と連携し、シークをサポートする新しいPlaybackTransportControlGlue
。- アプリが
PlaybackTransportControlGlue
にシーク サムネイルを提供するための新しい基本クラスPlaybackSeekDataProvider
。
- SeekBar を使用して再生コントロールをレンダリングする新しい
- Preferences Data Store:
-
PreferenceDataStore
を使用して、Preference
とPreferenceManager
の新しいメソッドで設定した独自の設定ストレージを実装できるようになりました。
-
既知の問題
- ダウンロード可能なフォントと絵文字の Google Play 開発者サービスとの統合は、Google Play 開発者サービス v11 以降でのみ動作します。このバージョンは、現在 Google Play 開発者サービスのベータ版プログラムを通じてご利用いただけます。
バグの修正
-
MediaBrowserCompat.search()
API が機能しない(AOSP 問題 262170) -
ViewCompat.postInvalidateOnAnimation()
が例外をスローする(AOSP 問題 80146) -
onActivityCreated()
が破棄された Activity のフラグメントを呼び出す -
RecyclerView.isComputingLayout()
はプリフェッチ中に true を返す -
Fade
遷移が中断および反転すると、View
はアニメーションを最初から開始します。(Android フレームワークから修正済みです)。 -
Transition.Fade
がView
の初期アルファ版を無視する(AOSP 問題 221820)
リビジョン 26.0.0 Alpha 1
(2017 年 3 月)
26.0.0-alpha1 はプレリリース版である点にご注意ください。API サーフェスは変更される可能性があります。また、サポート ライブラリの最新の安定版の機能やバグ修正が含まれているとは限りません。
重要な変更点
注: 最小 SDK バージョンが 14 に引き上げられました。その結果、14 より前の API との互換性のためにのみ存在していた API の多くが非推奨になりました。これらの API のクライアントは、サポートが終了した各 API のリファレンス ページに記載されている同等のフレームワークに移行する必要があります。
- Support-Percent モジュールはサポートが終了になりました。このモジュールのクライアントは、SDK Manager で個別のアーティファクトとして提供されている新しい ConstraintLayout ウィジェットに移行する必要があります。
- support-fragment モジュールと、support-media-compat モジュールへの依存関係がなくなりました。
新しい API
O プレビューで追加されたプラットフォーム API の下位互換性をサポートするため、多くの新しいクラス、メソッド、定数が追加されています。
IME_FLAG_NO_PERSONALIZED_LEARNING
: IME は、ブラウザなどのプライベート モードがあるアプリの「学習なし」フラグをリッスンできます。この機能により、IME はアプリがプライベート モードかどうかを把握して、アプリがプライベート モードのときに学習機能やアダプティブ機能を無効にできます。
25.2.0 と 26.0.0-alpha1 における API の変更点をすべて網羅したリストについては、サポート ライブラリ API の相違点レポートをご覧ください。
バグの修正
- 単純な
AutoTransition
アニメーションが、ビューの「ジャンプ」によって中断されることがあります。(AOSP 問題 221816)
リビジョン 25.4.0
(2017 年 6 月)
重要: サポート ライブラリは Google の Maven リポジトリから利用できるようになりました。SDK Manager からサポート リポジトリをダウンロードする必要はありません。詳細については、サポート ライブラリのセットアップをご覧ください。
重要な変更点
-
FragmentManager
状態の変化中は、executePendingTransactions()
、commitNow()
、popBackStackImmediate()
などのトランザクションの呼び出しは許可されません。トランザクションのリエントラント実行は安全ではないため、FragmentManager
は状態の変化中にこれを適用するようになりました。 - このサポート ライブラリ リリースと並行して、multidex バージョン 1.0.2 もリリースします。このバージョンには、次の重要な変更が含まれています。
- インストルメンテーション APK の Multidex 変換を許可します。
- MultiDexTestRunner が非推奨になりました(代わりに AndroidJUnitRunner を使用してください)。
- アプリの不適切なアーカイブ抽出管理に対する保護を強化します。
- 一時ファイルが破棄される原因となるバグを修正しました。
- 同時実行プロセスでインストールすることで、短時間でインストールできます。
- API 19 と 20 でのインストールのバグを修正しました。
新しい API と変更された API
AnimatedVectorDrawableCompat
でパスのモーフィングとパス補完がサポートされました。パスのモーフィングを使用すると、あるパス(android:valueFrom
で指定)から別のパス(android:valueTo
で指定)にシェイプを変化させることで、複雑で魅力的な視覚効果を提供できます。パス補間を使用すると、AnimatedVectorDrawableCompat
の interpolator をパスとして指定できます(interpolator の XML で android:pathData
として指定されます)。
API 差分
修正された問題
- MediaBrowserServiceCompat に接続するときに null ポインタ例外が発生する
- MediaBrowserCompat.search() API が機能しない(AOSP 問題 262170)
- BrowseFragment onItemClicked コールバックが 25.3.0 で破損する
- 25.3.1 の VerticalGridView で上下にスクロールするときに NullPointerException が発生する
- SimpleArrayMap.allocArrays() で ClassCastException が発生する
リビジョン 25.3.1
(2017 年 3 月)
修正された問題
SwitchCompat
には、最小 SDK バージョン 14 以降が必要です。(AOSP 問題 251302)- 物理ベースのアニメーション
updateListener
は、最初のフレームをスキップします。 BottomNavigationView
ラベルのアニメーションが破損する。
リビジョン 25.3.0
(2017 年 3 月)
重要な変更点
Gradle からビルドするときに、サポート ライブラリのバージョン メタデータが AndroidManifest.xml
に自動的に追加されます。これにより、公開ビルドのバージョンのトラッキングが簡単になります。次に例を示します。
<meta-data android:name="android.support.VERSION" android:value="25.3.0" />
サポートの終了
このリリースでは、いくつかのメソッドとクラスが非推奨になりました。これらの非推奨の API は今後のバージョンで削除される予定です。デベロッパーはこの API から移行する必要があります。特定の API から移行する方法について詳しくは、その API のドキュメントをご覧ください。
ExifInterface
- ブール値メソッド
getLatLong(float[])
は非推奨になりました。代わりに、新しいメソッドgetLatLong()
を使用してください。このメソッドは引数を取らずにdouble[]
を返します。 mediacompat
PlaybackStateCompat.Builder.setErrorMessage(CharSequence)
のサポートが終了しました。代わりに、新しいメソッドsetErrorMessage(int, CharSequence)
を使用します。このメソッドにはエラーコードとオプションの説明が渡されます。EXTRA_SUGGESTION_KEYWORDS
のサポートが終了しました。代わりに、MediaBrowserCompat
検索機能を使用してください。v7.recyclerview
LinearLayoutManager.getInitialItemPrefetchCount()
の名前がLinearLayoutManager.getInitialPrefetchItemCount()
に変更されました。以前の名前は引き続きサポートされますが、今後のリリースで削除される予定です。
新しい API と変更された API
appcompat-v7
ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean)
の新しいメソッドを使用すると、ナビゲーション ドロワーの切り替えアイコンのアニメーションを簡単に無効にできます。customtabs
- メッセージ チャネルのサポートを追加しました。詳細については、
CustomTabsService.requestPostMessageChannel()
およびCustomTabsService.postMessage()
のリファレンスをご覧ください。 dynamic-animation
- 新しい物理ベースのアニメーション ライブラリは、ユーザー入力に動的に反応するアニメーションを作成するための API セットを提供します。
leanback-v17
- パララックスの背景のサポートを追加しました。詳しくは、
Parallax
のリファレンスをご覧ください。 - TV インターフェースで時刻を選択するための
TimePicker
ウィジェットを追加しました。 mediacompat
- 検索機能を追加しました。詳細については、
MediaBrowserCompat.search()
およびMediaBrowserServiceCompat.onSearch()
のリファレンスをご覧ください。 - シャッフル モードと繰り返しモードのサポートを追加しました。詳細については、
MediaSessionCompat.setRepeatMode()
およびsetShuffleModeEnabled()
のリファレンスをご覧ください。
修正された問題
StaggeredGridLayoutManager
がIllegalArgumentException
をスローする(AOSP 問題 230295)- アタッチされているが画面上にはない
RecyclerView
をRecyclerView
のプリフェッチが正しく処理しない LinearLayout
が Robolectric に認識されないActivity
が破棄されると、onActivityCreated()
のフラグメントが不適切に呼び出されるAppCompatImageView
コンストラクタによりArrayIndexOutOfBoundsException
が発生するCall.Details
アクティビティの遷移で UI のパフォーマンスが低下する
リビジョン 25.2.0
(2017 年 2 月)
重要な変更点
修正された問題
- このリリースでは、A2DP デバイスとメディア ルーティング API を使用するとデバイスが応答しなくなり、再起動が必要になる場合がある MediaRouter の重大な問題が修正されています。
FragmentManager.FragmentLifecycleCallbacks
クラスは静的になりました。
修正された問題
- 画面ミラーリングでスライド プレゼンテーションを表示すると、デバイスが Wi-Fi から切断される
setMediaButtonReceiver()
に登録されていないメディアアプリがメディアボタンで適切に処理されませんでした。-
文字列リソースでの
VectorDrawable
エラー(AOSP 問題 232407) TextInputLayout
が、テキストが XML によって設定される場合のヒントとテキストをオーバーレイします。(AOSP 問題 230171)MediaControllerCompat
のメモリリーク(AOSP 問題 231441)-
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
がクラッシュする - ビューホルダーをリサイクルすると
RecyclerView
がクラッシュする(AOSP 問題 225762) WearableExtender
内のアクションに対してgetAllowGeneratedReplies()
が誤って false を返す
リビジョン 25.1.1
(2017 年 1 月)
重要: サポート ライブラリのリビジョン 25.1.1 と 25.1.0 の android.support.v7.media.MediaRouter
クラスには既知のバグがあります。アプリで v7 MediaRouter
を使用している場合は、サポート ライブラリ リビジョン 25.2.0 に更新して、このバグを修正してください。
重要な変更点
-
フラグメント トランザクションを、トランザクション内およびトランザクション間で最適化できるようになりました。フラグメント トランザクションのオペレーションを最適化すると、キャンセルされるオペレーションを削除できます。たとえば、2 つのトランザクションが同時に実行され、1 つ目のトランザクションはフラグメント A を追加し、2 つ目のトランザクションはフラグメント A をフラグメント B に置き換えるとします。この場合、最初のオペレーションがキャンセルされ、フラグメント B のみが追加される可能性があります。これは、フラグメント A が作成または破棄のライフサイクルを通過しない可能性があることを意味します。
この最適化の副作用は、フラグメントが想定した順序と異なる状態変化を引き起こす可能性があることです。たとえば、あるトランザクションがフラグメント A を追加し、2 件目のトランザクションがフラグメント B を追加し、3 件目のトランザクションがフラグメント A を削除するとします。最適化を行わなければ、フラグメント B の作成中にフラグメント A も存在することが予測される可能性があります。これは、フラグメント B が追加された後にフラグメント A が削除されるためです。最適化を行うと、フラグメント B の作成中にフラグメント A が存在することを、フラグメント B は確認できなくなります。これは、最適化によってフラグメント A の作成と破棄が削除される可能性があるためです。
この最適化はデフォルトで無効になっています。最適化を有効にするには、
FragmentTransaction.setAllowOptimization(true)
を呼び出します。 - Fragment は、
Fragment.postponeEnterTransition()
とFragment.startPostponedEnterTransition()
を使用する準備ができるまで遷移とアニメーションを延期できるようになりました。この API は、アクティビティ遷移で使用されるActivity.postponeEnterTransition()
およびActivity.startPostponedEnterTransition()
に類似しています。
修正された問題
-
MediaSessionCompatTest
がIllegalArgumentException
で失敗する -
25.1.0 では
DetailsFragment.installTitleView()
は呼び出されません。 - フラグメント トランザクションにより終了時にゴーストビューが維持される(AOSP 問題 230679)
-
BottomNavigationView
にはアイテム アイコンとテキストの間にスペースが必要(AOSP 問題 230653) - 選択したリスナーが、新しい
PlaybackFragment
とPlaybackSupportFragment
にありません。 -
サポート ライブラリ バージョン 25.1.0 のエミュレータで、
TextInputLayout
フォーカスが正しく変更されない(AOSP 問題 230461) BottomNavigationView
のメニューを置き換えられない(AOSP 問題 230343)-
RecyclerView
とStaggeredGridLayoutManager
がフルスパン アイテムでクラッシュする(AOSP 問題 230295) setCallback(null)
の使用時にMediaSessionCompat
でクラッシュする-
再生行が変更されたときに
PlaybackGlueHostOld
とPlaybackSupportGlueHostOld
がコールバックを通知しない -
PlaybackOverlayFragment
の例/test
が再生を開始できない -
API 15 で
RecyclerViewFocusRecoveryTest
が失敗する - [スクリーンショット] 行が画面の上部にフォーカスされました
-
API 15 で
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
がクラッシュする -
onSubactionClicked()
のsetActions()
が壊れる -
一部のビューホルダーをリサイクルすると
RecyclerView
がクラッシュする
リビジョン 25.1.0
(2016 年 12 月)
重要: サポート ライブラリのリビジョン 25.1.1 と 25.1.0 の android.support.v7.media.MediaRouter
クラスには既知のバグがあります。アプリで v7 MediaRouter
を使用している場合は、サポート ライブラリ リビジョン 25.2.0 に更新して、このバグを修正してください。
重要な変更点
- ネストされた
RecyclerView
ウィジェットのクライアント(水平スクロール リストの垂直スクロール リストなど)は、内部RecyclerView
ウィジェットのレイアウト マネージャーに、画面上でスクロールされる前に準備するアイテム数のヒントを示すことで、パフォーマンスを大幅に向上させることができます。LinearLayoutManager.setInitialPrefetchItemCount(N)
を呼び出します。ここで、N は内部アイテムごとに表示されるビューの数です。たとえば、内側と横方向のリストに一度に少なくとも 3.5 個のアイテムビューが表示される場合は、LinearLayoutManager.setInitialPrefetchItemCount(4)
を呼び出すことでパフォーマンスを改善できます。それにより、外側のRecyclerView
をスクロールしながら、RecyclerView
が関連するすべてのビューを早期に作成できるようになり、スクロール中のスタッタリングの量が大幅に削減されます。 FragmentActivity.setSupportMediaController()
とFragmentActivity.getSupportMediaController()
が非推奨になりました。新しい静的なMediaControllerCompat.setMediaController()
メソッドとMediaControllerCompat.getMediaController()
メソッドを使用してください。- クライアントが appcompat の色合い(
appcompat:buttonTint
など)を介してウィジェットの色合いを指定する場合、クライアントは必要なすべての状態(「disabled」、「pressed」など)を提供する必要があります。これは、フレームワークの色合い調整を使用する際にウィジェットの色合いを指定する方法と一貫性があります。
新しい API と変更された API
- ExifInterface サポート ライブラリを追加しました。このライブラリは、JPEG や RAW 形式のファイルから Exif 情報を読み取り、JPEG 画像ファイルに Exif 情報を設定する機能のサポートを切り離します。
Snackbar
がリファクタリングされ、アプリでカスタム コンテンツを表示できるようになりました。BaseTransientBottomBar
は、一般的なスライドとアニメーションの動作を公開する新しい基本クラスです。- メディア プレーヤーを Android TV アプリに統合するためのヘルパークラスを含む新しい leanback.media パッケージを追加しました。
- カスタマイズ可能なレイアウトと属性を持つ
SeekBarPreference
を v7 設定サポート ライブラリに追加しました。 - v4 サポート ライブラリに
ArraySet
クラスを追加しました。このクラスは、API レベル 23 で導入されたフレームワークArraySet
クラスに対応します。 RecyclerView
RecyclerView アイテムのプリフェッチを改善:- ネストされた
RecyclerView
プリフェッチにより、別のスクロールRecyclerView
内のRecyclerView
からコンテンツをプリフェッチできます。プリフェッチの実行量は API で制御できます。 - カスタム
LayoutManager
オブジェクト用の API を追加しました。実装すると、スクロールやフリングの際にプリフェッチを有効にできるようになります。 - プリフェッチの改善により、フレーム間の時間内に可能な限り多くの作成/バインド作業のみを行うようにしました。
- ネストされた
修正された問題
- パスワードの表示 / 非表示の切り替えは、ユーザー補助機能のテストが失敗する。
- Appcompat が、L より前のデバイスで
state_enabled
を遵守しない。 RecyclerView
にフォーカス回復メカニズムを追加しました。また、Android TV デバイスなどで D-pad ナビゲーションを使用する場合にサポート設定フラグメントでフォーカスが壊れる問題を修正しました。- Leanback: ヘッダーを無効にして空のアダプターを指定すると、BrowseFragment がクラッシュする。
- Appcompat:
AlertDialog
の幅が広すぎます。 InputContentInfoCompat
は、releasePermission()
を呼び出す必要があるときにrequestPermission()
を呼び出します。MediaBrowserCompat
がクラッシュする。- CoordinatorLayout は、可視性が
GONE
に設定されている場合に、ビューを測定して配置します。 - API レベル 24 未満で
AnimatedVectorDrawableCompat
の色合い調整ができませんでした - Leanback ライブラリが誤った lint エラーをトリガーする
- パレット ライブラリがすべての API レベルでテストが失敗する
RecyclerView
が Leanback でテストに失敗する- ビューホルダーをリサイクルすると
RecyclerView
がクラッシュする(AOSP 問題 225762) - バックスタック内のフラグメントに対して
Fragment.onDestroy()
が呼び出されない - 閉じたときに
CollapsingToolbarLayout
のスクリムが描画されない CoordinatorLayout.offsetChildByInset()
がIllegalArgumentException
をスローするRecyclerView
アイテムをアニメーション化すると、内部RecyclerView
がデタッチされ、今後のプリフェッチを防止できます。- 接続された
RecyclerView
アイテムはネスト プリフェッチできません。 - プリフェッチされたネストされた
RecyclerView
アイテムのデータは最初のレイアウト中に破棄される - 2 つのドラッグ イベントが同じ位置に到達すると、
RecyclerView
のプリフェッチが失敗する RecyclerView
は、RenderThread のレンダリング中に投機的にレイアウトする必要がある- 夜間に設定されたカラーリソースがドローアブルに変換されると、リソース キャッシュから正しくパージされないことがある。
FloatingActionButton
: プログラムによる BackgroundTintList の設定が正しく機能しない(AOSP 問題 227428)TextInputLayout
: ErrorView に書体が設定されません(AOSP 問題 227803)TextInputLayout
が常に API 23 未満で明るいエラーカラーにフォールバックする(AOSP 問題 221992)- ポインタが離れると
FloatingActionButton
が押されたと表示される
公開されているバグ修正の完全なリストは、 AOSP Issue Tracker で入手できます。
サポートの終了
このリリースでは、いくつかのメソッドとクラスのサポートが終了しています。これらの非推奨の API は今後のバージョンで削除される予定です。デベロッパーはこの API から移行する必要があります。特定の API から移行する方法について詳しくは、その API のドキュメントをご覧ください。
-
android.support.design.widget
-
android.support.v17.leanback.app
BackgroundManager.getDefaultDimLayer()
BackgroundManager.getDimLayer()
BackgroundManager.setDimLayer()
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[])
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.getFragment()
PlaybackControlGlue.getOnItemViewClickedListener()
PlaybackControlGlue.onRowChanged()
PlaybackControlGlue.pausePlayback()
PlaybackControlGlue.skipToNext()
PlaybackControlGlue.skipToPrevious()
PlaybackControlGlue.startPlayback()
PlaybackControlSupportGlue
PlaybackOverlayFragment
PlaybackOverlaySupportFragment
-
android.support.v17.leanback.widget
-
android.support.v4.app
FragmentActivity.getSupportMediaController()
FragmentActivity.setSupportMediaController()
リビジョン 25.0.1
(2016 年 11 月)
修正された問題
TextInputLayout
のパスワード切り替えがデフォルトで無効になり、デベロッパーが指定した終了ドローアブルが不必要に上書きされるのを防げるようになりました。これは、passwordToggleEnabled
XML 属性を使用して手動で有効にすることもできます。- マテリアル仕様に合わせて
BottomNavigationView
項目が 1 行になりました。 - レイアウト マネージャーが null の場合、プリフェッチ中に
RecyclerView
がクラッシュします。 BottomNavigationView
高度が正しく設定されました。(AOSP 問題 226182)- プログラムでメニュー項目を追加すると、
BottomNavigationView
がクラッシュしていました。(AOSP 問題 225731) TextInputLayout
の左右の複合ドローアブルを修正しました。(AOSP 問題 225836)- ビューホルダーをリサイクルすると、
RecyclerView
がクラッシュしていました。(AOSP 問題 225762) - Leanback: 分割画面ビューで TalkBack が「null」という単語を頻繁に発話します。
RecyclerView
: Android Studio でのレンダリングに関する問題。(AOSP 問題 225753)onNavigationItemSelected()
が false を返した後も、BottomNavigationView
はメニュー項目を選択した状態で表示します。(AOSP 問題 225898)- ForwardingListener が
NoSuchMethodError
をスローする。(AOSP 問題 225647) TextInputEditText
は IME 抽出モードでヒントを表示しません。(AOSP 問題 221880)
公開されているバグ修正の完全なリストは、 AOSP Issue Tracker で入手できます。
リビジョン 25.0.0
(2016 年 10 月)
重要な変更点
ContextCompat
コンストラクタが保護されました。このクラスは一般公開でインスタンス化できませんが、新しい API レベルをターゲットとするサポート ライブラリによって拡張される場合があります。ActivityCompat
コンストラクタが保護されました。このクラスは一般公開でインスタンス化できませんが、新しい API レベルをターゲットとするサポート ライブラリによって拡張される場合があります。getReferrer(Activity)
が静的になりました。-
android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V)
を削除しました。このメソッドのクライアント実装をすべて削除する必要があります。 -
android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object)
を削除しました。代わりに、より適切な名前のfromMediaSession()
メソッドを使用してください。 -
android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object)
が削除されました。代わりに、より適切な名前のMediaSessionCompat.QueueItem#fromQueueItem
メソッドを使用してください。 -
android.support.v7.widget.Space
を削除しました。使用量はandroid.support.v4.widget.Space
に置き換える必要があります。
新しい API
-
android.support.design.widget.BottomNavigationView
クラスは、マテリアル デザイン仕様のボトム ナビゲーション パターンを実装します。 - 新しい
android.support.v13.view.inputmethod
パッケージには、API レベル 13 より後に導入されたandroid.view.inputmethod.InputConnection
機能にアクセスするためのクラスが含まれています。 -
android.v7.widget.RecyclerView.DividerItemDecoration
クラスは、アイテム間の垂直方向または水平方向の分割線の基本実装を提供します。 android.support.v7.app.NotificationCompat
、DecoratedCustomViewStyle
、DecoratedMediaCustomViewStyle
に新しい装飾スタイルを追加し、プラットフォーム API 24 でミラークラスを追加しました。
修正された問題
公開されているバグ修正の完全なリストは、 AOSP Issue Tracker で入手できます。
リビジョン 24.2.1
2016 年 9 月
修正された問題:
FloatingActionButton
をCoordinatorLayout
の間接の子に固定できなくなりました。(AOSP 問題 220250)fitsSystemWindows=true
でCollapsingToolbarLayout
内の画像のサイズが正しく調整されません。(AOSP 問題 220389)Snackbar
が表示され、閉じられるとCoordinatorLayout
がIndexOutOfBoundsException
をスローする。(AOSP 問題 220762)TextInputLayout
がエラーテキストの色を解決できない。(AOSP 問題 220305)BatchedCallback.onMoved()
がBatchedCallback.onInserted()
を呼び出す。(AOSP 問題 220309)TextInputLayout
は右の複合ドローアブルをオーバーライドします。(AOSP 問題 220728)
公開されているバグ修正の完全なリストは、 AOSP Issue Tracker で入手できます。
リビジョン 24.2.0
2016 年 8 月
リリース 24.2.0 には次の変更が含まれています。
注: リリース 24.2.0 では、Android 2.2(API レベル 8)以前のサポートが削除されました。これらのシステム バージョンを提供するためだけに存在するクラスとメソッドは非推奨としてマークされ、使用できなくなりました。非推奨になったクラスとメソッドは、今後のリリースで削除される可能性があります。
v4 サポート ライブラリの分割
このリリースでは、v4 サポート ライブラリが複数の小さなモジュールに分割されました。
-
support-compat
Context.getDrawable()
やView.performAccessibilityAction()
など、新しいフレームワーク API の互換性ラッパーを提供します。-
support-core-utils
AsyncTaskLoader
やPermissionChecker
など、いくつかのユーティリティ クラスを提供します。-
support-core-ui
-
UI 関連のさまざまなコンポーネント(
ViewPager
、NestedScrollView
、ExploreByTouchHelper
など)を実装します。 -
support-media-compat
MediaBrowser
やMediaSession
など、メディア フレームワークの一部をバックポートします。-
support-fragment
- フラグメント フレームワークをバックポートします。このモジュールには、
support-compat
、support-core-utils
、support-core-ui
、support-media-compat
との依存関係があります。
下位互換性を確保するため、Gradle スクリプトで support-v4
を指定すると、APK にはこれらのモジュールがすべて含まれます。ただし、APK サイズを縮小するには、アプリが必要とする特定のモジュールのみをリストすることをおすすめします。
API の更新
- カスタムタブを使用しているクライアントは、Instant Apps を開くかどうかを制御できます。(Instant Apps はまだ一般提供されていません)。Instant Apps を有効または無効にするには、
CustomTabsIntent.Builder.setInstantAppsEnabled()
を呼び出すか、EXTRA_ENABLE_INSTANT_APPS
を指定します。デフォルトでは、Instant Apps 機能が利用可能になると、カスタムタブはデフォルトで有効になります。 TextInputLayout
では、マテリアル デザイン仕様の パスワードの公開設定の切り替えのサポートが追加されています。- 新しい
android.support.transition
パッケージは、Transitions フレームワークを API レベル 14 以降にバックポートします。詳細については、android.support.transition
のリファレンスをご覧ください。 - カスタムタブ サポート ライブラリにより、セカンダリ ツールバーでの
RemoteViews
の使用に対するサポートが追加されました。既存のsetToolbarItem()
メソッドのサポートが終了しました。 AppCompatResources
では、新しいgetDrawable()
メソッドを使用してリソース ID から<vector>
(API レベル 9 以降)または<animated-vector>
(API レベル 11 以降)を読み込む機能が追加されています。CoordinatorLayout
で、インセット ビューの定義と、他のビューがインセット ビューを無視するように指定できるようになりました。これにより、アプリはFloatingActionButton
がSnackbar
の処理を妨げるのと同様の動作パターンを、任意のビューの子に対して複製できるようになります。詳細については、LayoutParams.insetEdge
およびLayoutParams.dodgeInsetEdges
のリファレンス ドキュメントをご覧ください。- 新しい
DiffUtil
クラスは、2 つのコレクションの差を計算し、RecyclerView.Adapter
で使用するのに適した更新オペレーションのリストをディスパッチできます。 -
フリングに対するカスタム動作をサポートするために
RecyclerView.OnFlingListener
が追加されました。SnapHelper
クラスは、子ビューのスナップに特化した実装を提供します。LinearSnapHelper
クラスはこの実装を拡張して、ViewPager
と同様の中央揃えのスナップ動作を提供します。 - カスタムタブ ライブラリで
CustomTabsIntent.setAlwaysUseBrowserUI()
を呼び出すことで、クライアントがカスタムタブ UI ではなく標準のブラウザ UI をリクエストできるようになりました。この動作は、ブラウザがデフォルトでカスタムタブ UI に設定されていて、ユーザーが標準のブラウザ UI を優先するよう指定している場合に役立ちます。
動作の変更
- appcompat ライブラリの昼夜機能を使用する場合、時間帯または
AppCompatDelegate.setLocalNightMode()
の呼び出しによって日中モードと夜間モードが変更されるたびに、システムが自動的にアクティビティを再作成するようになりました。 Snackbar
は、ステータスバーが半透明の場合にナビゲーション バーの背後に描画するようになりました。
mediarouter ライブラリ
Bluetooth デバイスはメディアルートとして表示されなくなりました。Bluetooth デバイスへのオーディオのルーティングは、Android システムレベルでのみ制御されるようになりました。
サポートの終了
非推奨になったクラスとメソッドは、将来のリリースで削除される可能性があります。これらの API からできるだけ早く移行する必要があります。
- 次のクラスのメソッドのいくつかは、API 8 以前でのみ必要だったため、使用できなくなりました。代わりに、フレームワーク実装を使用してください。
android.support.v4.view.KeyEventCompat
:KeyEvent
に置き換えます。android.support.v4.view.MotionEventCompat
:MotionEvent
を使用します。android.support.v4.view.ViewCompat
:View
を使用します。android.support.v4.view.ViewConfigurationCompat
:ViewConfiguration
を使用します。
-
AccessibilityServiceInfoCompat.getDescription()
のサポートが終了し、正しくローカライズされた説明を返すAccessibilityServiceInfoCompat.loadDescription()
に置き換えられました。 ActivityCompat
クラスを直接インスタンス化しないでください。非静的getReferrer(Activity)
メソッドは、今後のリリースで静的になる予定です。CoordinatorLayout.Behavior.isDirty()
は非推奨になり、CoordinatorLayout
によって呼び出されなくなりました。実装とこのメソッドの呼び出しはすべて削除する必要があります。MediaSessionCompat.obtain()
が非推奨になり、より適切な名前のメソッドfromMediaSession()
に置き換えられました。MediaSessionCompat.QueueItem.obtain()
が非推奨になり、より適切な名前のメソッドfromQueueItem()
に置き換えられました。- いくつかの抽象クラスが非推奨になり、フレームワークの同等性をより正確に反映したインターフェースに置き換えられました。
AccessibilityStateChangeListenerCompat
はAccessibilityManagerCompat.AccessibilityStateChangeListener
インターフェースに置き換えられました。OnCloseListenerCompat
はSearchViewCompat.OnCloseListener
インターフェースに置き換えられました。OnQueryTextListenerCompat
はSearchViewCompat.OnQueryTextListener
インターフェースに置き換えられました。
CustomTabsSession.setToolbarItem()
が非推奨になり、RemoteViews ベースのsetSecondaryToolbarViews()
に置き換えられました。
バグの修正
次の既知の問題がリリース 24.2.0 で修正されています。
- 最初の測定パスの前に
setRefreshing(true)
が呼び出されたときにSwipeRefreshLayout
インジケーターが表示されることを確認(AOSP 問題 77712) - ページ変更時に
TabLayout
のちらつきを防止しました(AOSP 問題 180454) - API レベル 11 以下で
SavedState
のマーシャリングを解除する際にClassNotFoundException
を回避する(AOSP 問題 196430)
公開されているバグ修正の完全なリストは、 AOSP Issue Tracker で入手できます。
リビジョン 24.1.1
2016 年 7 月
修正された問題:
- サポート ライブラリ間で共有されるリソース ID に影響する、24.1.0 リリースの問題を修正しました。この問題により、リソース(Design や appcompat など)を含むサポート ライブラリに依存するアプリで、リソース ID の不一致による問題が発生しました。
リビジョン 24.1.0
2016 年 7 月
- v4 サポート ライブラリの変更点:
-
NotificationCompat.Action.WearableExtender
には、Android Wear 2.0 プレビューとの互換性を確保するために、新しいgetHintDisplayActionInline()
メソッドとsetHintDisplayActionInline()
メソッドが用意されています。これらのメソッドを使用すると、アプリは、通知とともにアクションを表示するよう指定できます。Fragment.setUserVisbileHint()
を呼び出しても、まだ commit されていないFragmentTransaction
にヒントが追加されている場合に、フラグメントが開始されなくなりました。これは、setUserVisbileHint()
をオーバーライドし、super.setUserVisibleHint()
を呼び出した後にフラグメントの特定のライフサイクル状態を想定するFragmentPagerAdapter
のユーザーに影響します。詳細については、Fragment.setUserVisbileHint()
のドキュメントのリファレンス ページをご覧ください。
修正された問題:
- TabLayout.setCustomView(null) により NullPointerException が発生する(AOSP 問題 214753)
- TabLayout でカスタムタブが誤ってハイライト表示される(AOSP 問題 214316)
- AppCompatTextHelper が不正確に並べ替えられた属性配列を使用する(AOSP 問題 214366)
- カスタムの ContextWrapper を使用している場合、ドローアブル コンテナ XML から VectorDrawable を参照できない(AOSP 問題 214055)
- ViewDragHelper.saveLastMotion() が ArrayIndexOutOfBoundsException をスローする(AOSP 問題 212945)
- setState(STATE_EXPANDED) を使用すると BottomSheetBehavior が古いコンテンツの高さに拡張する(AOSP 問題 213660)
- CollapsingToolbarLayout が上部または下部のマージンがある固定可能な子を処理しない(AOSP 問題 213001)
- Leanback ブラウズ タイトルが RTL 配置をサポートしない(AOSP 問題 213461)
- 継承されたアノテーションがないために PagerTabStrip が表示されなくなる(AOSP 問題 213359)
- ブール値を使用して条件フラグを設定すると、データ バインディングが NullPointerException をスローする(AOSP 問題 191841)
- CoordinatorLayout が setFitsSystemWindows() に応答しない(AOSP 問題 212720)
- 初期状態の設定時に BottomSheetBehavior がクラッシュする(AOSP 問題 203114)
- ページ インデックスが大きい値の場合、ViewPager がページをスキップする(AOSP 問題 211734)
- BottomSheetBehavior が動的レイアウトで機能しない(AOSP 問題 205226)
リビジョン 24.0.0
2016 年 6 月
- v4 サポート ライブラリの変更点:
-
- 同期 commit 用に
Fragment.commitNow()
を追加しました。 - マルチパーティの会話用に
NotificationCompat.MessagingStyle
を追加しました NotificationManagerCompat.areNotificationsEnabled()
とgetImportance()
を追加しました。MediaSessionCompat
はMediaSession
の機能を反映するようになり、setMediaButtonReceiver()
の自動呼び出しを行わなくなりました。
注: API 24 以降の Android の将来のバージョンと上位互換性があるのは、バージョン 24.0.0 の
MediaBrowserServiceCompat
のみです。以前のバージョンを使用している場合は、互換性を確保するためにこのバージョンに更新してください。 - 同期 commit 用に
- v7 appcompat ライブラリの変更点:
-
- XML からテーマ別
ColorStateList
オブジェクトを参照するためのサポートを追加しました。
- XML からテーマ別
- Design サポート ライブラリの変更点:
-
StateListAnimator
を使用したAppBarLayout
高度の処理の改善。
- v17 Leanback ライブラリの変更点:
-
- 初回実行時のウェルカム フローと設定フローを提供する
OnboardingFragment
を追加しました
- 初回実行時のウェルカム フローと設定フローを提供する
- カスタムタブの変更点:
-
- セカンダリ ツールバーに
RemoteViews
階層を指定するためのサポートを追加しました。 - 1 行のウォームアップ用に
CustomTabsClient.connectAndInitialize()
を追加しました
- セカンダリ ツールバーに
リビジョン 23.4.0
2016 年 5 月
- v4 サポート ライブラリの変更点:
- v7 appcompat ライブラリの変更点:
-
- Android 4.4(API レベル 19)以前を搭載しているデバイスで、
DrawableContainer
オブジェクトでのベクター型ドローアブルの使用を再度有効にするためのAppCompatDelegate.setCompatVectorFromResourcesEnabled()
メソッドを追加しました。詳細については、AppCompat v23.2 - ベクターの経過時間をご覧ください。 - API レベル 23 で
AppCompatDelegate.setDefaultNightMode()
が正しいリソースを読み込まない API 23 の問題を修正しました。(問題 206573) NullPointerException
の原因となる可能性がある問題を修正しました。(問題 207638)
- Android 4.4(API レベル 19)以前を搭載しているデバイスで、
- Design サポート ライブラリの変更点:
-
- API レベル 21 ~ 22 で
setErrorEnabled(false)
の後のTextInputLayout
でエラーの色合いがクリアされない問題を修正しました(問題 202829)。 - アニメーションが無効になっている場合に
FloatingActionButton
が返されない問題を修正しました。(問題 206416)
スクロール フラグと併用した場合のscroll
|enterAlways
|enterAlwaysCollapsed
|snap
AppBarLayout
スナップ機能に関する問題を修正しました。 (問題 207398)
- API レベル 21 ~ 22 で
- Vector Drawable ライブラリの変更点:
-
- API レベル 23 の
TextView
でVectorDrawableCompat
が正しくレンダリングされないバグを修正しました。(問題 206227)
- API レベル 23 の
リビジョン 23.3.0
2016 年 4 月
- v4 サポート ライブラリの変更点:
-
AppLaunchChecker
を追加しました。これは、過去にユーザーがアプリをどのように起動したかを追跡するのに役立ちます。hasStartedFromLauncher()
は、ユーザーが以前にホーム画面からアプリを起動したのか、他の手段(特定のウェブ URL を表示するためなど)で起動されただけなのかを示します。MediaBrowserServiceCompat.mConnections
でのメモリリークを修正しました。(問題 205220)ViewPager
がページをめくるときにページの余白が考慮されない問題を修正しました。(問題 203816)Fragment.onRequestPermissionsResult()
が子フラグメントに配信されるようになりました。
- v7 appcompat ライブラリの変更点:
-
- 複数のポップアップが表示される可能性がある
AppCompatSpinner
の問題を修正しました。(問題 205052) - 枠線なしボタンの色付けに関する問題を修正しました。 (問題 202967)
AppCompatDialogFragment
とAlertDialog
の互換性の問題を修正しました。(問題 204805)- メモリと構成の問題を引き起こしていた
TintResources
に対する変更を元に戻しました。(Issue 205236)。
- 複数のポップアップが表示される可能性がある
- v7 mediarouter ライブラリの変更点:
-
MediaRouteControllerDialog
の音量スライダーの動作を修正しました。(問題 202299)
- v7 Preference ライブラリの変更点:
-
dividerHeight
が指定されている場合にPreferenceFragmentCompat
がクラッシュする問題を修正しました。(問題 204778)
- v7 recyclerview ライブラリの変更点:
-
- 表示されるアイテムの範囲が縮小した場合に
RecyclerView
がスクロール コールバックを呼び出さないバグを修正しました。(問題 200987) RecyclerView
が線形レイアウトにあり、重み付けされ、画像が含まれている場合にフリーズするバグを修正しました。(問題 203276)OrientationHelper.getStartAfterPadding()
で発生するクラッシュを解決しました。(問題 180521)android:nestedScrollingEnabled
の使用で発生するクラッシュを修正しました。(問題 197932)
- 表示されるアイテムの範囲が縮小した場合に
- Design サポート ライブラリの変更点:
-
- 非表示のボトムシートでタッチイベントを処理するバグを修正しました。(問題 203654)
fitsSystemWindows
が true の場合のBottomSheetBehavior
に関するレイアウトの問題を修正しました。(問題 203057)Snackbar
のユーザー補助に関する問題を修正しました。(問題 182145)Snackbar
スワイプ時のクラッシュを修正しました。(問題 203924)enterAlways
に関するAppBarLayout
のバグを修正しました。(問題 203661)TextInputLayout
がEditText
オブジェクトの背景色フィルタを不必要にクリアするバグを修正しました。 (問題 203357)
リビジョン 23.2.1
2016 年 3 月
- v4 サポート ライブラリの変更点:
-
- API レベル 17 ~ 19 における
DrawableCompat.wrap()
とLayerDrawable
の例外を修正しました。(Issue 201817)。 ViewDragHelper.shouldInterceptTouchEvent()
のArrayIndexOutOfBoundsException
を修正しました。(問題 182262)- サイズ変更のスクロール計算に関連する
ViewPager
のバグを修正しました。 DrawerLayout.DrawerListener
が設定されていない状態でDrawerLayout.removeDrawerListener()
を呼び出してしまう場合のNullPointerException
を修正しました。(Issue 202478)。- スクロール時に
ViewPager
がAccessibilityEvent
パラメータを適切に設定しないバグを修正しました。 Drawable.wrap()
の使用時にデバイスの回転中に遅延が発生する問題を修正しました。(問題 201924)
- API レベル 17 ~ 19 における
- v7 appcompat ライブラリの変更点:
-
- ベクター アセットへの依存関係を元に戻しました。これにより、appcompat ライブラリを使用するデベロッパーが
VectorDrawable
および関連するビルドフラグを使用する必要がなくなります。 - 夜間モードと API レベル 23 との互換性の問題を修正しました。 (問題 201910)
SwitchCompat
と API レベル 7 の互換性に関する問題を修正しました。(問題 201942)- リソース オブジェクトで構成値の伝播に関する問題を修正しました(問題 201928)
- API レベル 21 以下で
android.support.v7.app.NotificationCompat.MediaStyle
キャンセル ボタンが表示されなくなる互換性の問題を修正しました。(Issue 202156)。 - API レベル 21 以下での
AppCompatSpinner
との互換性クラッシュを修正しました。(Issue 202246)。 app:textAllCaps = "false"
スタイルが機能しない問題を修正しました。(Issue 202117)。SearchView
の復元時に発生するクラッシュを修正しました。(問題 201836)- AppCompat を使用してドローアブル リソースの色合いを調整するときに発生するメモリリークを修正しました。(Issue 202379)。
- API レベル 11 以下での
KeyEvent
に関する問題を修正しました。(Issue 202939)。
- ベクター アセットへの依存関係を元に戻しました。これにより、appcompat ライブラリを使用するデベロッパーが
- v7 cardview ライブラリの変更点:
- v7 recyclerview ライブラリの変更点:
-
- 複数の measure-spec メソッドに関連するバグを修正しました。(問題 201856)
- レイアウトまたはスクロールの計算中に
RecyclerView
でアダプターの変更が許可されないロックダウン期間を短縮しました。(問題 202046) - 非表示になっているアイテムの
notifyItemChanged()
を呼び出した場合に発生するクラッシュを修正しました。(問題 202136) RecyclerView.LayoutManager
が同じ測定パスでビューを追加または削除したときに発生するクラッシュを修正しました。(問題 193958)
- v7 mediarouter ライブラリの変更点:
-
- API レベル 17 で
MediaRouter.getInstance()
を呼び出した場合に発生するクラッシュを修正しました。(問題 180654)
- API レベル 17 で
- v17 Leanback ライブラリの変更点:
-
- 誤ったアイテムが選択される原因となっていた
GridLayout.onAddFocusables()
の問題を修正しました。 - アクションを閉じた後に
GuidedStepFragment
アクションが表示されなくなる問題を修正しました。
- 誤ったアイテムが選択される原因となっていた
- Design サポート ライブラリの変更点:
-
- タブプーリングによって発生する
TabLayout
のクラッシュを修正しました。(問題 201827) - 間違った色が選択される原因となっていた
NavigationView
のバグを修正しました。(問題 201951) setBackgroundTintList()
が背景色を変更できなくなるバグを修正しました。(問題 201873)android:fitsSystemWindows = “true”
と併用したときにAppBarLayout
が表示から完全にスクロール アウトしない問題を修正しました。 (問題 201822)BottomSheetDialog
で短いコンテンツのビューが正しく表示されない問題を修正しました。(問題 201793)- 内部のコンテンツが変更されたときに
BottomSheetDialogFragment
が散発的に移動する問題を修正しました。(問題 202125) - TextInputLayout カウンタのクラッシュを修正しました。リンク
TextInputLayout.getCounterMaxLength()
が保存済み状態を復元したときに発生するクラッシュを修正しました。(問題 202375)CoordinatorLayout
ではないビューの保存済み状態を使用してCoordinatorLayout
を復元するときに発生するClassCastException
を修正しました。
- タブプーリングによって発生する
- VectorDrawableCompat の変更点:
-
android:tintMode
の代わりに誤った変数が読み取られるバグを修正しました。(問題 201907)
リビジョン 23.2.0
2016 年 2 月
- v4 サポート ライブラリの変更点:
-
MediaBrowser
のサポートのためにMediaBrowserCompat
を、MediaBrowserService
のサポートのためにMediaBrowserServiceCompat
を追加しました。これは、メディアアプリのバックグラウンド サービスを UI コンポーネントに接続し、API レベル 21 以上を必要とせずに Android Auto および Android Wear と統合する場合に有用です。- ネストされた
FragmentActivity
に対してonActivityResult()
が呼び出されるようになりました。
- v7 AppCompat ライブラリの変更点:
-
- 夜間モード機能を API レベル 14 以上に追加しました。時間帯またはアプリ固有の設定に基づいて、マテリアル ライトのテーマとマテリアル ダークのテーマを切り替えることができます。
-
- 日中と夜間のテーマは
<sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
にあります。 AppCompatDelegate.setDefaultNightMode()
: 次のいずれかの定数を渡して、アプリのデフォルト モードを設定します。-
MODE_NIGHT_AUTO
MODE_NIGHT_NO
MODE_NIGHT_YES
MODE_NIGHT_FOLLOW_SYSTEM
AppCompatDelegate.setLocalNightMode()
: ローカルアプリ コンポーネントの夜間モード設定をオーバーライドします。AppCompatDelegate.getDefaultNightMode()
: デフォルトの夜間モードを返します。
- 日中と夜間のテーマは
- v7 mediarouter ライブラリの変更点:
-
MediaRouteControllerDialog
がアプリのカスタムテーマカラーを正しく適用するようになりました。
- Design サポート ライブラリの変更点:
-
- ボトムシートのサポートを追加しました。インタラクション プラグイン
BottomSheetBehavior
を使用すると、CoordinatorLayout
の子ビューをボトムシートとして機能させることができます。基本クラスであるBottomSheetCallback
は、ボトムシート イベントをモニタリングするコールバックを提供します。
- ボトムシートのサポートを追加しました。インタラクション プラグイン
- CustomTabs サポート ライブラリの変更点:
-
- Chrome カスタムタブでは、既存のトップ アクション ボタンに加えて、アクション ボタンを備えたボトムバーをアプリに含めることができるようになりました。
CustomTabsIntent.Builder.addToolBarItem()
: カスタムタブにアクション ボタンを追加します。これを使用して複数のボタンを追加できます。CustomTabsSession.setToolBarItem()
: ツールバー アイテムのビジュアルを更新します。このメソッドは、有効な ID が指定され、ブラウザ セッションがフォアグラウンドにある場合にのみ成功します。
- VectorDrawable サポート ライブラリを追加しました。
-
- 追加されたクラス:
-
VectorDrawableCompat
AnimatedVectorDrawableCompat
- API レベル 7 以降で動作するアプリに
VectorDrawable
アセットのサポートが追加されました。AnimatedVectorDrawable
アセットは API レベル 11 以上でもサポートされています。ベクター アセットは画像アセットよりもかなり小さくできます。また、複数のデバイス画面をサポートするのに必要なアセットの量を減らすことで、アプリのサイズを縮小できます。 - このライブラリは v7 AppCompat ライブラリの依存関係になり、デベロッパーと AppCompat は簡単にベクター型ドローアブルを使用できるようになりました。
ImageButton
内またはImageView
内でVectorDrawableCompat
を使用するには、app:srcCompat
XML 属性またはsetImageResource()
メソッドを使用します。 - API レベル 20 以前で属性 ID の参照を続けるには、
build,gradle
ファイルに次のappt
フラグを追加します。 -
- Android Plugin for Gradle 1.5.0 以前を使用してビルドする場合は、
build.gradle
ファイルに次の行を追加します。 -
android { defaultConfig { // Stops the Gradle’s automatic rasterization of vectors generatedDensities = [] } // Flag that tells aapt to keep the attribute ids aaptOptions { additionalParameters "--no-version-vectors" } }
- Android Plugin for Gradle 2.0.0 以上を使用してビルドする場合は、
build.gradle
ファイルに次の行を追加します。 -
android { defaultConfig { vectorDrawables.useSupportLibrary = true } }
- Android Plugin for Gradle 1.5.0 以前を使用してビルドする場合は、
- v17 Leanback ライブラリの変更点:
-
GuidedStepFragment
に新しい機能を追加しました。機能の決定や一連の決定をユーザーにガイドするコンポーネントです。-
GuidedAction
にボタン アクションを追加しました。GuidedStepFragment.setButtonActions()
: ユーザーが [アクション] ビューで選択できるGuidedAction
ボタンのリストを設定します。- 説明のフィールドが編集可能になりました。
-
GuidedAction.Builder.descriptionEditable()
:true
を渡すと、アクションの説明を編集可能に設定します。GuidedAction.getEditDescription()
: 編集可能な説明をCharSequence
として返します。
- サブアクションのプルダウン リストを追加しました。
-
GuidedAction.setSubActions()
:GuidedAction
リストをサブアクションのプルダウン メニューとして設定します。
DatePicker
機能用のGuidedDatePickerAction
ウィジェットを追加しました。-
- 日付は、年、月、日の列を使用して選択し、範囲はカスタマイズできます。
GuidedDatePickerAction.Builder
:GuidedDatePickerAction
オブジェクトのビルダークラス。GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat)
: 適切な 3 文字のString
(例:“YMD”
、“MDY”
)を渡して、目的の日付形式を設定します。または、datePickerFormat
XML 属性を使用します。
- v7 RecyclerView ライブラリの変更点:
-
RecyclerView
に AutoMeasure というオプトイン機能が追加され、RecyclerView.LayoutManager
でコンテンツを簡単にラップしたり、RecyclerView
の親から提供されるさまざまな測定仕様を処理したりできるようになりました。RecyclerView
の既存のアニメーション機能をすべてサポートしています。-
- カスタムの
RecyclerView.LayoutManager
がある場合は、setAutoMeasureEnabled(true)
を呼び出して新しい AutoMeasure API の使用を開始します。組み込みのRecyclerView.LayoutManager
オブジェクトはすべて、デフォルトで自動測定が有効になっています。 RecyclerView.LayoutManager
が一部のRecyclerView.LayoutParams
設定(スクロール方向のMATCH_PARENT
など)を無視しなくなりました。注: これらの制限が解除された際に、レイアウトで予期しない動作が発生する可能性があります。正しいレイアウト パラメータを指定してください。
- カスタムの
- ペイロード情報で
RecyclerView.ViewHolder
を更新するとき、DefaultItemAnimator
は変更アニメーションを無効にするようになりました。 ItemTouchHelper
のエスケープ速度を変更して、スワイプの感度を制御できるようになりました。スワイプを簡単にしたり、難しくしたりするには、getSwipeEscapeVelocity(float defaultValue)
をオーバーライドしてdefaultValue
を変更します。
リビジョン 23.1.1
2015 年 11 月
- v7 recyclerview ライブラリの変更点:
-
ItemTouchHelper
ユーティリティ クラスが提供する「スワイプして閉じる」アクションを実行してからアイテムを追加した際に発生するクラッシュを修正しました。 (問題 190500)
- v7 preference ライブラリの変更点:
-
- ProGuard の使用に関する問題を修正しました。 (問題 183261)
- v17 Leanback サポート ライブラリの変更点:
-
- ライブラリの内部的な問題をいくつか修正しました。
- Design サポート ライブラリの変更点:
-
NavigationView
クラスにgetHeaderView
メソッドを追加しました。- Android 4.0(API レベル 15)以下を搭載しているデバイスにおける、
FloatingActionButton
オブジェクトの透明な背景の問題を修正しました。 (問題 183315)
リビジョン 23.1.0
2015 年 10 月
- v4 サポート ライブラリの変更点:
-
NestedScrollView
ウィジェットにOnScrollChangedListener
インターフェースのサポートを追加しました。これにより、スクロールの X 位置または Y 位置が変更されたときにコールバックを受信できます。- 受信した再生コントロールを、
MediaSessionCompat
クラスを管理するサービスに転送するMediaButtonReceiver
クラスを追加しました。MediaSessionCompat
クラスには、マニフェストでメディアボタン レシーバを自動的に検索できるコンストラクタがあります。メディアボタン レシーバーは、ハードウェアまたは Bluetooth のコントロールから再生コントロールを処理するうえで重要な部分です。
- v7 appcompat ライブラリの変更点:
-
- マテリアル デザインの
Seekbar
とImageButton
のウィジェットを追加しました。 - 色合いを調整する機能をサポートするように
ImageView
ウィジェットを更新しました。 SwitchCompat
ウィジェットの外観を更新しました。
- マテリアル デザインの
- v7 mediarouter ライブラリの変更点:
-
MediaRouteChooserDialog
クラスに次の機能を追加しました。- メディアルート プロバイダの検出中に読み込みページを表示します。
- デバイスの識別に便利なデバイスタイプのアイコンが用意されています。
- 現在のアプリでの使用頻度に応じてルートを並べ替えます。
- 横表示に対応します。
MediaRouteControllerDialog
クラスに次の機能を追加しました。- 画面のキャストを認識し、適切な説明を表示します。
- さまざまなアルバムアートのサイズとアスペクト比をサポートし、アートを非同期で読み込みます。
- アプリの原色に基づいてコンテンツの色を自動的に選択します。
- デバイス上の使用可能な画面スペースに基づいてダイアログのレイアウトを調整します。
- 横表示に対応します。
- v7 palette ライブラリの変更点:
-
Bitmap
オブジェクトの特定の領域からの色抽出をサポートするため、setRegion()
メソッドを追加しました。
- v7 recyclerview ライブラリの変更点:
-
- カスタマイズ性を向上させるため、改善されたアニメーション API を
ItemAnimator
クラスに追加しました。 - アニメーションを変更しても、
ViewHolder
オブジェクトの 2 つのコピーが適用されず、アイテム コンテンツのアニメーションが有効になります。また、ItemAnimator
オブジェクトは、同じViewHolder
オブジェクトを再利用するか、新しいオブジェクトを作成するかを決定します。 - 新しい情報レコード API を使用すると、
ItemAnimator
クラスはレイアウトのライフサイクルの適切な時点で柔軟にデータを収集できるようになります。この情報は、後で animate コールバックに渡されます。
- 下位互換性のないこの API の変更に対して、次のように容易に実行できる移行計画をご用意しました。
- 以前に
ItemAnimator
クラスを拡張したことがある場合は、基本クラスをSimpleItemAnimator
に変更でき、コードは以前と同様に動作します。SimpleItemAnimator
クラスは、新しい API をラップすることで以前の API を提供します。 - 一部のメソッドを
ItemAnimator
クラスから削除しました。次のコードはコンパイルされなくなります。
Kotlin
recyclerView.itemAnimator.supportsChangeAnimations = false
Java
recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
次のように置き換えることができます。
Kotlin
val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator animator?.supportsChangeAnimations = false
Java
ItemAnimator animator = recyclerView.getItemAnimator(); if (animator instanceof SimpleItemAnimator) { ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false); }
- カスタマイズ性を向上させるため、改善されたアニメーション API を
- v7、v14、v17 の設定サポート ライブラリの変更点:
-
EditText
ダイアログのコントロール用 API を削除しました。
- v17 Leanback サポート ライブラリの変更点:
-
- サポート ライブラリ用の
GuidedStepFragment
クラスのバージョン(android.support.v4.app.Fragment
を拡張)を追加し、アニメーションと遷移を改善しました。 - 既存のコンテンツ上に配置できるように
GuidedStepFragment
クラスを更新しました。 SearchFragment
クラスに、さまざまなタイプの検索補完にアノテーションを付ける機能を追加しました。VerticalGridFragment
クラスに段階的なスライド遷移のサポートを追加しました。
- サポート ライブラリ用の
- Design サポート ライブラリの変更点:
-
TextInputLayout
ウィジェットに 文字数カウントのサポートが追加されました。SCROLL_FLAG_SNAP
定数を追加することで、AppBarLayout
クラスにエッジスナップのサポートを追加しました。スクロールが終了すると、ビューが部分的にしか表示されていない場合、ビューはスナップされ、最も近い端にスクロールされます。app:actionLayout
属性またはMenuItemCompat.setActionView()
メソッドを使用して、カスタムビューのサポートをNavigationView
クラスに追加しました。
- Custom Tabs サポート ライブラリの変更点:
-
enableUrlBarHiding()
メソッドをCustomTabsIntent
クラスに追加しました。これにより、下にスクロールして URL バーを自動的に非表示にするかどうかをクライアントでカスタマイズできます。setActionButton()
メソッドをCustomTabsSession
クラスに追加しました。これにより、クライアントは起動済みのカスタムタブのカスタム アクション ボタンのアイコンを変更できます。CustomTabsCallback
クラスのonNavigationEvent
メソッドの新しいイベントとして、TAB_SHOWN
定数とTAB_HIDDEN
定数を追加しました。
リビジョン 23.0.1
2015 年 9 月
- v7 と v14 の Preference サポート ライブラリの変更点:
-
- マテリアル デザインのレイアウト ファイルとスタイル ファイルを追加しました。 (問題 183376)
- v7 appcompat ライブラリの変更点:
-
- ハードウェア レイヤの使用を Android 4.1(API レベル 16)以降に制限することで、
Fragment
クラスのクラッシュの問題を修正しました。 (問題 183896) - アクティビティが
setSupportActionBar()
メソッドを使用してActionBar
として機能するようにToolbar
クラスを設定した場合に、ハードウェア ボタンが機能しない問題を修正しました。 (問題 183334) Windows feature must be requested before adding content
エラーをスローしないようにAppCompatDialogFragment
クラスを更新しました。(問題 183186)
- ハードウェア レイヤの使用を Android 4.1(API レベル 16)以降に制限することで、
- Design サポート ライブラリの変更点:
-
- 回転後に正しく描画されるように
AppBarLayout
クラスを修正しました。(問題 183109) - ユーザーがスワイプした後にクリックしたときに正しく動作するように
TabLayout
クラスを修正しました。 (問題 183123)
- 回転後に正しく描画されるように
- Custom Tabs サポート ライブラリの変更点:
-
- バージョンをサポートするため、
minSdkVersion
の値を 16 から 15 に引き下げました。 - インテントから
CustomTabsSessionToken
を生成する方法を追加しました。
- バージョンをサポートするため、
リビジョン 23
2015 年 8 月
- 新しいサポート ライブラリを追加しました。
サポート ライブラリの変更点の完全なリストについては、サポート ライブラリ API の相違点レポートをご覧ください。
リビジョン 22.2.1
2015 年 7 月
- Design サポート ライブラリの変更点:
-
FloatingActionButton
クラスにhide()
メソッドとshow()
メソッドを追加し、プログラムでアニメーションをトリガーできるようにしました。- スナックバーを閉じるか別のスナックバーが表示されるまでスナックバーを表示するため、
LENGTH_INDEFINITE
定数をSnackbar
クラスに追加しました。また、setActionTextColor(int)
メソッドとsetActionTextColor(ColorStateList)
メソッドも追加しました。 - 現在選択されているタブを取得するために、
getSelectedTabPosition()
メソッドをTabLayout
クラスに追加しました。 - メソッド チェーン用の
android.support.v7.app.NotificationCompat.MediaStyle
クラス用の完全な Fluent API を提供しました。 - アイテムのバッチ挿入用に便利なメソッドを
RecyclerView
に追加しました。
サポート ライブラリの変更点の完全なリストについては、サポート ライブラリ API の相違点レポートをご覧ください。
リビジョン 22.2.0
2015 年 5 月
- Design サポート ライブラリを追加:
-
EditText
のヒントとエラーテキストをフローティング ラベルとして表示するためのTextInputLayout
を追加しました。- デフォルト サイズまたはミニサイズをサポートするメイン アクションをフローティング アクション ボタンとしてインターフェースに実装するための
FloatingActionButton
を追加しました。 - アニメーション化されたスナックバーにオプションのアクションとともに軽量のフィードバックを提供する
Snackbar
を追加しました。 - 固定でスクロール可能なタブを実装し、
ViewPager
とも簡単に統合できるようにTabLayout
を追加しました。 - メニュー リソースを介してメニュー アイテムをインフレートする機能など、ナビゲーション ドロワーのコンテンツを実装するための
NavigationView
を追加しました。 CoordinatorLayout
を追加しました。これは汎用レイアウトであり、兄弟ビュー間の依存関係を構築し、CoordinatorLayout.Behavior
を介してコンポーネント間の簡単なスクロール操作を可能にするために使用します。Design Library のコンポーネントの多くは、CoordinatorLayout
の子であることに依存しています。AppBarLayout
を追加しました。これは、Toolbar
やその他のビュー(TabLayout
など)のコンテナで、画面外にスクロールする、下方向のスクロールに反応して表示される、画面をオフ/スクロールする前に折りたたみ/折りたたみ解除することで、スクロール イベントに反応します。Toolbar
の折りたたみ方法を制御するCollapsingToolbarLayout
を追加しました。ツールバーを折りたたむには、折りたたみ時にコンポーネントを画面上部に固定する、ImageView
などのコンポーネントの視差スクロールを導入する、ビューが部分的に折りたたまれたときにコンテンツ スクリムの色を追加する、などの方法があります。
- v4 サポート ライブラリの変更点:
-
- ユーザー補助イベント処理のために、
getContentChangeTypes()
メソッドとsetContentChangeTypes()
メソッド、および関連する変更タイプフィールドをAccessibilityEventCompat
クラスに追加しました。 - キューからカスタム アクションを取得できるように、関連する状態フィールドを持つ
getActiveQueueItemId()
、getCustomActions()
、getExtras()
のメソッドをPlaybackStateCompat
クラスに追加しました。 - 再生状態にカスタム アクションを追加するために、
addCustomAction()
、setActiveQueueItemId()
、setExtras()
の各メソッドをPlaybackStateCompat.Builder
クラスに追加しました。 - キューからカスタム アクションを取得できるように、
fromCustomAction()
メソッドとgetCustomAction()
メソッドをPlaybackStateCompat.CustomAction
クラスに追加しました。 - ビューで操作できるように、
isAttachedToWindow()
メソッド、offsetLeftAndRight()
メソッド、offsetTopAndBottom()
メソッドをViewCompat
クラスに追加しました。 - ページの変更に応答するために、
addOnPageChangeListener()
メソッド、clearOnPageChangeListeners()
メソッド、removeOnPageChangeListener()
メソッドをViewPager
クラスに追加しました。ViewPager.setOnPageChangeListener()
メソッドが非推奨になりました。 - 子孫のユーザー補助状態が変更されたことをビューの親に通知するために、
notifySubtreeAccessibilityStateChanged()
メソッドをViewParentCompat
クラスに追加しました。 - アニメーションを追加するために、
translationZ()
、translationZBy()
、z()
、zBy()
のメソッドをViewPropertyAnimatorCompat
クラスに追加しました。
- ユーザー補助イベント処理のために、
- v7 appcompat ライブラリの変更点:
-
- 現在のウィンドウから開始されるアクション モードを処理するために、
onWindowStartingSupportActionMode()
メソッドをAppCompatActivity
クラス、AppCompatCallback
クラス、AppCompatDialog
クラスに追加しました。 - ネイティブ アクション モードを処理するために、
isHandleNativeActionModesEnabled()
メソッドとsetHandleNativeActionModesEnabled()
メソッドをAppCompatDelegate
クラスに追加しました。
- 現在のウィンドウから開始されるアクション モードを処理するために、
サポート ライブラリの変更点の完全なリストについては、サポート ライブラリ API の相違点レポートをご覧ください。
リビジョン 22.1.0
2015 年 4 月
- annotations ライブラリの変更点:
-
- コード インスペクションの拡張をサポートする Annotations ライブラリを追加しました。アノテーションはメタデータタグとして追加されます。これを変数、パラメータ、戻り値に付加することで、メソッドの戻り値、渡されたパラメータ、ローカル変数とフィールドを検査できます。
- v4 サポート ライブラリの変更点:
-
- 色関連のユーティリティ メソッドのセットを提供する
ColorUtils
クラスを追加しました。 unwrap()
メソッドとwrap()
メソッドをDrawableCompat
クラスに追加しました。これにより、API レベル 4 以降のすべてのデバイスでsetTint()
、setTintList()
、setTintMode()
を使用できるようになります。- トレース イベントをシステム トレース バッファに書き込む
TraceCompat
クラスを追加しました。システム トレース バッファは、Systrace ツールで収集して可視化できます。 - 循環整数配列データ構造を作成するため
CircularIntArray
クラスを追加しました。 clear()
、removeFromStart()
、removeFromEnd()
の各メソッドをCircularArray
クラスに追加しました。また、このクラスの既存のメソッドを非 final に変更しました。InputDeviceCompat
クラスのデータにアクセスするヘルパークラスとしてInputDeviceCompat
を追加しました。LayoutInflaterCompat
クラスのデータにアクセスするためのヘルパークラスとしてLayoutInflaterCompat
クラスを追加し、LayoutInflaterFactory
インターフェースを追加しました。- ネストされたスクロールをサポートするクラス、メソッド、インターフェースを追加しました。
- ネストされたスクロールの親ビューと子ビューを実装するための
NestedScrollingChildHelper
ヘルパークラスとNestedScrollingParentHelper
ヘルパークラスを追加しました。 View
サブクラスで実装するNestedScrollingChild
インターフェースを追加しました。- スクロール操作をサポートし、スクロール関連の API を提供するため、
NestedScrollingParent
インターフェースとScrollingView
インターフェースを追加しました。 getNestedScrollAxes()
メソッドをViewGroupCompat
クラスに追加しました。- ネストされたスクロールをサポートするため、
ViewParentCompat
クラスにメソッドを追加しました。 - 新旧両方の Android バージョンで、ネストされたスクロールの親と子をサポートするため、
NestedScrollView
クラスを追加しました。
- ネストされたスクロールの親ビューと子ビューを実装するための
- 軸の値とイベントソースを取得するためのメソッドと定数を
MotionEventCompat
クラスに追加しました。 AccessibilityNodeInfoCompat
クラスを更新して、エラー、コンテンツの無効化、ラベル用のメソッドを追加しました。- アニメーション用の補間クラス
FastOutLinearInInterpolator
、FastOutSlowInInterpolator
、LinearOutSlowInInterpolator
、LinearOutSlowInInterpolator
、PathInterpolatorCompat
を追加しました。 - 汎用レイアウトでコンポーネント間にギャップを作成する
Space
クラスを追加しました。このクラスは gridlayout ライブラリで非推奨となっています。 TextView
内の機能にアクセスするためのTextViewCompat
クラスを追加しました。EdgeEffectCompat
クラスのonPull()
メソッドにディスプレースメント パラメータを追加しました。
- 色関連のユーティリティ メソッドのセットを提供する
- v7 appcompat ライブラリの変更点:
-
- appcompat ウィジェットに色合いのサポート(
AppCompatAutoCompleteTextView
、AppCompatButton
、AppCompatCheckBox
、AppCompatCheckedTextView
、AppCompatEditText
、AppCompatMultiAutoCompleteTextView
、AppCompatRadioButton
、AppCompatRatingBar
、AppCompatSpinner
、AppCompatTextView
など)を追加しました。 - サポート ライブラリのアクションバー機能を使用するアクティビティの基本クラスとして
AppCompatActivity
を更新しました。このクラスは、サポートが終了したActionBarActivity
に代わるものです。 - AppCompat に実装する
AppCompatCallback
インターフェースを追加して、コールバックを実行できるようにしました。 AppCompatDelegate
抽象クラスをデリゲートとして追加しました。これを使用すると、AppCompat のサポートを任意のアクティビティに拡張できます。- AppCompat テーマ ダイアログの基本クラスとして
AppCompatDialog
クラスを追加しました。 - AppCompat をテーマとする
AlertDialog
を提供するため、スピナー スタイルのAlertDialog
クラスとAlertDialog.Builder
クラスを追加しました。 Palette
インスタンスを生成するためのPalette.Builder
クラスを追加しました。from(Bitmap)
メソッドをPalette
クラスに追加し、返されたPalette.Builder
インスタンスで Palette の生成を開始できるようにしました。Palette.generate()
メソッドとPalette.generateAsync()
メソッドが非推奨になりました。
getAbsoluteAlignment()
メソッドをGridLayout.Spec
クラスに追加しました。Toolbar
のスタイル設定に対するapp:theme
の使用が非推奨になりました。API レベル 7 以降のすべてのデバイスのツールバーでandroid:theme
を使用できるようになりました。また、API レベル 11 以降のデバイスのすべてのウィジェットでandroid:theme
のサポートを使用できるようになりました。
- appcompat ウィジェットに色合いのサポート(
- v17 Leanback ライブラリの変更点:
-
- 複数ステップの意思決定フローの作成をサポートするために、
GuidedStepFragment
、GuidanceStylist
、GuidedActionsStylist
を追加しました。
- 複数ステップの意思決定フローの作成をサポートするために、
- v7 recyclerview ライブラリの変更点:
-
- リストの順序でアイテムを表示し、リストの変更の通知を提供する
SortedList
クラスを追加しました。 - 並べ替えられたリストを
RecyclerView.Adapter
クラスにバインドできるSortedListAdapterCallback
クラスを追加しました。
- リストの順序でアイテムを表示し、リストの変更の通知を提供する
- v8 renderscript ライブラリの変更点:
-
- ヒストグラム フィルタとして使用する
ScriptIntrinsicHistogram
クラスを追加しました。 - 2D 割り当てのサイズ変更を実行するための
ScriptIntrinsicResize
クラスを追加しました。
- ヒストグラム フィルタとして使用する
- v4 サポート ライブラリの変更点:
-
- 指定されたリソース ID、画面密度、テーマについてドローアブル オブジェクトを返すように
getDrawable()
メソッドを更新しました。 setImportantForAccessibility()
メソッドを追加しました。これにより、ビューがユーザー補助イベントをトリガーする必要があるかどうかを指定できます。- ステータスバーの背景ドローアブルを取得できるように
getStatusBarBackgroundDrawable()
メソッドを追加しました。 NotificationCompat.CarExtender.UnreadConversation
クラスにメソッドを追加して、Android Auto メッセージ アプリが追加の通知データを取得できるようにしました。- 円レイアウトの直径を返す
getProgressCircleDiameter()
メソッドを追加しました。 DrawerLayout
のデフォルトのステータスバーの色をcolorPrimaryDark
に変更しました。
- 指定されたリソース ID、画面密度、テーマについてドローアブル オブジェクトを返すように
- v7 appcompat ライブラリの変更点:
-
- スピナー スタイル
Base_Widget_AppCompat_Spinner_Underlined
を追加しました。 Widget_AppCompat_AutoCompleteTextView
、MultiAutoCompleteTextView
、TextAppearance_AppCompat_Button
、Base_Widget_AppCompat_RatingBar
の色合い調整されたウィジェット スタイルを追加しました。
- スピナー スタイル
- v17 Leanback ライブラリの変更点:
-
getRecycledPoolSize()
メソッドとsetRecycledPoolSize()
メソッドを追加して、リサイクル プールのサイズをカスタマイズできるようにしました。- タイトル アイコンでラップされたコンテンツをサポートするため、レイアウト幅の設定に
WRAP_CONTENT
属性を追加しました。 - 遷移の更新を改善するために XML で
R.transition
を定義しました。 - 右から左の方向へのレイアウトに対するサポートを有効にしました。
- 再生と一時停止のメディア キーイベントのサポートを
PlaybackOverlayFragment
クラスに追加しました。 BrowseFragment
クラスとDetailsFragment
クラスに開始遷移と戻り遷移を追加しました。- オブジェクトのアダプター配列内のアイテムを置換するために
replace()
メソッドを追加しました。
- v7 mediarouter ライブラリの変更点:
-
- マテリアル デザイン スタイルを使用するように Google Cast アイコンを更新しました。
- マテリアル デザイン スタイルを使用するように、
MediaRouter
ダイアログで使用されるすべてのアイコンを更新しました。
- v7 recyclerview ライブラリの変更点:
-
getlayoutPosition()
メソッドとgetadapterPosition()
メソッドをRecyclerView
クラスに追加しました。RecyclerView
クラスのclassgetChildPosition()
メソッドとfindViewHolderForPosition()
メソッドが非推奨になりました。RecyclerView.ViewHolder
クラスのgetPosition()
メソッドが非推奨になりました。RecyclerView.LayoutParams
クラスのgetViewPosition()
メソッドが非推奨になりました。
- v4 サポート ライブラリの変更点:
-
- ウェアラブル デバイスの通知でのバーコード表示を改善するために、
NotificationCompat.WearableExtender
メソッドがいくつか追加されました。
- ウェアラブル デバイスの通知でのバーコード表示を改善するために、
- v4 サポート ライブラリの変更点:
-
- 通知に対する Android Auto 拡張機能をサポートする
NotificationCompat.CarExtender
クラスを追加しました。
- 通知に対する Android Auto 拡張機能をサポートする
- v7 appcompat ライブラリの変更点:
-
- 新しいポップアップ メニューをサポートするため
PopupMenu
コンストラクタを追加しました。 Toolbar
クラスに折りたたみアイコンの説明のサポートを追加しました。commitIcon
の表示をサポートするようにSearchView
ウィジェットを更新しました。Toolbar
クラスからbuttonGravity
属性を削除しました。
- 新しいポップアップ メニューをサポートするため
- v7 cardview ライブラリの変更点:
-
CardView
の背景色の変更をサポートするsetCardBackgroundColor(ColorStateList)
API を追加しました。- 不透明度の値を
TRANSLUCENT
としてより正確に報告するようにCardView
を変更しました。
- v7 recyclerview ライブラリの変更点:
-
- ページング用のタッチスロップ設定をサポートするため、
TOUCH_SLOP_DEFAULT
定数とTOUCH_SLOP_PAGING
定数をRecyclerView
クラスに追加しました。
- ページング用のタッチスロップ設定をサポートするため、
- v17 Leanback ライブラリの変更点:
-
- v4 コード フラグメントを生成するためのサポートを追加しました。
CardView
のセカンダリ テキストの色を変更しました。
- Android 5.0 より前の Multi-dex ファイルをサポートするために、複数の Dalvik Executable(DEX)ファイルをサポートする multidex サポート ライブラリを追加しました。
- v4 サポート ライブラリの変更点:
-
- Android 5.0(API レベル 21)を搭載するデバイス向けの
Fragment
遷移のサポートを追加しました。 Android 4.4 以前を搭載しているデバイスでは、画面遷移の影響を受けることはありません。 - ドキュメント ツリーの操作中に
File
から簡単に移行できるように、DocumentFile
を追加しました。ただし、このクラスでは、Android 4.4(API レベル 19)で追加されたプラットフォームのDocumentsContract
API に比べ、より多くの処理オーバーヘッドが必要になります。そのため、Android 4.4 以降で実行する場合は、DocumentsContract
を使用するように切り替える必要があります。
- Android 5.0(API レベル 21)を搭載するデバイス向けの
- v7 appcompat ライブラリの変更点:
-
- マテリアル デザインのユーザー インターフェースのサポートを追加しました。
- アプリ レイアウト内で使用するために
ActionBar
の機能を一般化するToolbar
を追加しました。 - メニューから矢印へのアニメーションを含む
ActionBarDrawerToggle
を更新しました。 - 一般的なユーザー インターフェース ウィジェットを更新し、Android 5.0 より前のデバイスで実行する場合に、テーマ属性を使用して色合いを調整できるようにしました
- Android 4.0(API レベル 14)で追加された
Switch
ウィジェットのバックポートであるSwitchCompat
を追加しました。
- 新しい v7 cardview ライブラリ:
-
CardView
ウィジェットを追加しました。このツールは、データアイテムを表示するためのマテリアル デザインと互換性のある実装を提供します。
- 新しい v7 recyclerview ライブラリ:
-
RecyclerView
ウィジェットを追加しました。このウィジェットは、大規模なデータセットに限られたウィンドウを表示するための柔軟なリスト表示を提供します。
- 新しい v7 palette ライブラリ:
-
- 画像から代表色を抽出できる
Palette
クラスを追加しました。
- 画像から代表色を抽出できる
- 新しい v17 Leanback ライブラリ:
-
BrowseFragment
、DetailsFragment
、PlaybackOverlayFragment
など、TV ユーザー インターフェースの作成に対するサポートを追加しました。 これらのユーザー インターフェース ウィジェットの使用方法について詳しくは、TV 再生アプリの作成をご覧ください。
- v4 サポート ライブラリの変更点:
-
NotificationCompat.WearableExtender
に Android Wear の通知の拡張サポートを追加しました。これにより、通知にウェアラブル固有の機能を指定できます。NotificationCompat.Action.WearableExtender
を追加しました。これにより、ウェアラブル通知にアクションを追加できます。NotificationManagerCompat
を追加しました。これにより、ウェアラブル機能を適切にサポートする通知を発行できます。RemoteInput
を追加しました。これにより、ハンドヘルド デバイスは、ウェアラブル デバイスに表示される通知から音声入力を受信できます。SwipeRefreshLayout
でのタッチ フィードバックの処理を改善しました。
- v4 サポート ライブラリの変更点:
-
SwipeRefreshLayout
クラスを追加しました。このクラスを使用すると、ユーザーは垂直スワイプ操作でビューのコンテンツを更新できます。- ナビゲーション ドロワーに関するユーザー補助の問題を修正しました。
- v7 appcompat ライブラリの変更点:
-
- アクションバーの背景の問題を修正しました。
- v4 サポート ライブラリの変更点:
-
- 印刷の非同期処理を追加することで
PrintHelper
を改善しました。 DrawerLayout
クラスのaddChildrenForAccessibility()
メソッドの近似を修正しました。ActionBarDrawerToggle
でのスライド ドローアブルのミラーリングを修正しました。- コレクション イテレータからアイテムを削除する際の off-by-one の問題を修正しました。
- 印刷の非同期処理を追加することで
- v7 mediarouter ライブラリの変更点:
-
MediaRouteProvider.ProviderMetadata
でコンポーネントのフルネームを使用することによってルート識別を改善しました。- 無効なルートを非表示にするように
MediaRouteChooserDialog
を更新しました。
- v8 renderscript ライブラリの変更点
-
- RenderScript サンクレイヤにエラー伝播を追加しました。
- v4 サポート ライブラリの変更点:
-
getObbDirs()
、getExternalFilesDirs()
、getExternalCacheDirs()
、getStorageState()
での External Storage API のサポートを追加しました。 Android 4.3(API レベル 18)以前を搭載しているデバイスでは、これらのヘルパー メソッドは常に単一のファイル オブジェクトを返します。Android 4.4(API レベル 19)以降で実行する場合、これらのメソッドは複数のファイル オブジェクトを返すことがあります。- Print API に対応し、最小限のコードで画像を出力する
PrintHelper
クラスを追加しました。 - ポップアップ メニューに drag-to-open ユーザー インターフェースのサポートを追加しました。詳細については、
PopupMenuCompat
とListPopupWindowCompat
をご覧ください。 AccessibilityNodeProviderCompat
にfindFocus()
メソッドを追加し、AccessibilityNodeInfoCompat
にgetLiveRegion()
メソッドを追加することにより、ユーザー補助サポートを改善しました。- 新しいスケーリング操作メソッドにアクセスするためのヘルパークラス
ScaleGestureDetectorCompat
を追加しました。 - 右から左に記述する言語表示における
ActionBarDrawerToggle
の問題を修正しました。 AutoScrollHelper
オプションを変更して、タッチイベントを使用したり、他のビューに渡したりできるようにしました。
- v7 mediarouter ライブラリの変更点:
-
- メディア再生キューイングのサポート、HTTP ヘッダー値とメディア再生時間の設定のサポートを追加しました。
- メディア ルーターでメディア再生セッションを明示的に管理するための明示的な開始、取得、終了のセッション アクションを追加しました。
- v4 サポート ライブラリの変更点:
-
- ユーザー インターフェース
- 右から左、左から右にフォーマットされたテキストが結合されるテキスト文字列を処理するための
BidiFormatter
を追加しました。 - 最初のレイアウト処理でページャーの測定幅が 0 の場合を適切に処理するように
ViewPager
を変更しました。 - プロジェクト コードの編集中に測定の例外をスローしないように
DrawerLayout
とSlidingPaneLayout
を変更しました。
- 右から左、左から右にフォーマットされたテキストが結合されるテキスト文字列を処理するための
- ユーザー補助
- カスタムビューに対するユーザー補助の実装を簡素化するために、
ExploreByTouchHelper
を追加しました。 ViewPager
でTYPE_VIEW_SCROLLED
ユーザー補助イベントが誤って入力される問題を修正しました。- ユーザー補助イベントに入力する際の
ViewPager
の null ポインタ例外を修正しました。 CharSequence
入力をString
オブジェクトに変更することで、AccessibilityNodeInfoCompat
を簡素化しました。Object
を入力として使用するAccessibilityRecordCompat
コンストラクタが非推奨になりました。
- カスタムビューに対するユーザー補助の実装を簡素化するために、
- メディア
- 再生、一時停止、スキップ、その他のメディア アクションなどのメディア トランスポート コントロールを管理するため、
TransportMediator
ヘルパークラスを追加しました。 - 1 つ以上のデバイス ディスプレイへのディスプレイ出力を管理するための
DisplayManagerCompat
を追加しました。
- 再生、一時停止、スキップ、その他のメディア アクションなどのメディア トランスポート コントロールを管理するため、
- その他の変更
- デバイスのウェイクアップ イベントを検出して
Service
に処理を渡す一般的なパターンを実装し、ハンドオフの完了前にデバイスがスリープ状態に戻らないようにするWakefulBroadcastReceiver
ヘルパークラスを追加しました。 - 後でキャンセルされたデータ変更のバックグラウンド更新に対処できるように、
commitContentChanged()
とrollbackContentChanged()
という 2 つの新しい API をAsyncTaskLoader
に追加しました。
- デバイスのウェイクアップ イベントを検出して
- ユーザー インターフェース
- 新しい v7 appcompat ライブラリ:
- 新しい v7 mediarouter ライブラリ:
-
Google Cast デベロッパー プレビューをサポートする新しい Mediarouter ライブラリを追加しました。 v7 Mediarouter ライブラリ API は、現在のデバイスから外部画面、スピーカー、その他の送信先デバイスへのメディア チャンネルとストリームのルーティングを制御する手段を提供し、Android 2.1(API レベル 7)と互換性があります。詳しくは、V7 mediarouter ライブラリをご覧ください。
サポート ライブラリ r18 で導入された v7 MediaRouter ライブラリ API は、サポート ライブラリの今後のリビジョンで変更される可能性があります。現時点では、Google Cast デベロッパー プレビューに関連してのみライブラリを使用することをおすすめします。
- v4 サポート ライブラリの変更点:
-
- ウィンドウの端から pull できるナビゲーション ドロワーを作成するための
DrawerLayout
を追加しました。 - さまざまな画面サイズに適切に適応する、リンクされた概要ビューと詳細ビューを作成するための
SlidingPaneLayout
ウィジェットを追加しました。 DrawerLayout
とActionBar
の関数を結びつける方法としてActionBarDrawerToggle
を追加しました。- 親ビュー内でビューをドラッグするための新しい共通コンポーネントとして、
ViewDragHelper
を追加しました。 Scroller
とOverScroller
の互換性をサポートするため、ScrollerCompat
を追加しました。- アプリ間で非公開ファイルを共有できるように
FileProvider
を追加しました。 - 関連する
PagerAdapter
クラスがnotifyDataSetChanged()
の呼び出しなしで変更された場合に例外をスローするようにViewPager
を更新しました。 ViewPager
の子が並べ替え順を描画する問題を修正しました。- タップのタイムアウトと長押しイベントの間で欠落している
onSingleTapConfirmed(MotionEvent)
呼び出しをディスパッチするようにGestureDetectorCompat
を修正しました。
- ウィンドウの端から pull できるナビゲーション ドロワーを作成するための
- 新しい v7 gridlayout ライブラリ:
-
GridLayout
レイアウト オブジェクトをサポートするGridLayout
を追加しました。GridLayout
レイアウト オブジェクト内に空白の領域を作成するために使用できるandroid.support.v7.widget.Space
を追加しました。
- v4 サポート ライブラリの変更点:
-
ViewPager
のインタラクションを改善しました。ViewPager
が誤ったページを選択する可能性があるバグを修正しました。ViewPager
のレイアウト中のremoveView()
メソッドの使用を修正しました。- 戻るボタンを使用して閉じると検索テキストがクリアされない
SearchViewCompat
の問題を修正しました。この修正は、ホスト API レベル 14 以降にのみ適用されます。
- v4 サポート ライブラリの変更点:
-
- ユーザー インターフェース
- ネストされた
Fragment
クラスのサポートを追加しました。 FragmentManager
デバッグに改善を追加しました。- フラグメントとタブの操作によって
ListView
の状態が失われる可能性があるFragmentTabHost
の問題を修正しました。 FragmentStatePagerAdapter
でユーザーに表示されるヒントに関する問題を修正しました。ViewPager
にPageTransformer
インターフェースを追加し、アプリがスクロールのカスタム遷移動作を提供できるようにしました。- 現在のリリースから
TaskStackBuilder
に新機能と修正を追加しました。 - 現在使用中の
PagerAdapter
を正しくトラッキングするようにPagerTitleStrip
を修正しました。 PagerTitleStrip
でのディスプレイのちらつき、配置、テキスト クリッピングの問題を修正しました。- 下線を描画するときにパディングを適切に考慮するように
PagerTabStrip
を修正しました。
- ネストされた
- ユーザー補助
AccessibilityEventCompat
に新しいユーザー補助操作とタップイベント タイプのサポートを追加しました。ViewCompat
に新しいユーザー補助 API のサポートを追加しました。performAccessibilityAction()
メソッドのサポートをViewCompat
に追加しました。
GestureDetectorCompat
による操作のサポートを追加しました。- 新しい
AtomicFile
クラスを使用してファイルに対してアトミック オペレーションを実行するためのサポートを追加しました。 IntentCompat
にmake
メソッドの全セットのサポートを追加しました。LruCache
ユーティリティ クラスにtrimToSize()
メソッドを追加しました。CONNECTIVITY_ACTION
ブロードキャストから NetworkInfo を取得するようにConnectivityManagerCompat
を更新しました。
- ユーザー インターフェース
- v4 サポート ライブラリの変更点:
-
NotificationCompat
に加えて、Android 4.1(API レベル 16)で導入された通知機能のサポートを追加しました。
- v4 サポート ライブラリの変更点:
-
- ユーザー インターフェースのサポート
PagerTabStrip
サポートを追加し、PagerTitleStrip
を超える拡張機能を提供します。setAllCaps
オプション、タイトルの配置、外観の改善、最小幅の制約、タップ ナビゲーションの問題など、PagerTitleStrip
とPagerTabStrip
のさまざまなバグを修正しました。ViewPager
ページガターのサポートを追加しました。これにより、ViewPager
クラスは、地図など、水平方向のスクロール範囲が大きいコンテンツのページングをサポートできるようになります。- サイズやデータセットの変更に関する問題、ページの位置、ユーザー操作、スクロール トラッキング、キーボード ナビゲーションに関する問題など、
ViewPager
の多数のバグを修正しました。 - ターゲット フラグメントが存在しない場合の
onActivityResult()
の適切な処理、非表示フラグメントへの選択イベントのディスパッチ、FragmentTransaction.replace()
の動作の改善、ビューから移動されるフラグメントの状態処理の改善など、Fragment
の多くのバグを修正しました。 postOnAnimation()
メソッドのサポートをViewCompat
に追加しました。- Android 4.1(API レベル 16)の「上へ」ナビゲーション機能が利用可能な場合に使用できるよう、
NavUtils
を更新しました。
- ユーザー補助
- Android 4.1(API レベル 16)で行われた修正に従うよう、
AccessibilityNodeInfoCompat
などのユーザー補助サポートクラスを更新しました。 - ユーザー補助のスクロール操作のサポートを
ViewPager
に追加しました。
- Android 4.1(API レベル 16)で行われた修正に従うよう、
- 全般的な改善
- Android 4.1(API レベル 16)での API の変更を反映するように
TaskStackBuilder
を更新しました。 TaskStackBuilder
を拡張して、Service から使用できるようにしました。EXTRA_HTML_TEXT
のサポートをShareCompat
に追加しました。setNumber()
メソッドをサポートするようにNotificationCompat.Builder
を更新しました。ConnectivityManagerCompat
にisActiveNetworkMetered()
メソッドのサポートを追加しました。
- Android 4.1(API レベル 16)での API の変更を反映するように
- ユーザー インターフェースのサポート
- v4 サポート ライブラリの変更点:
-
TaskStackBuilder
によって生成されたPendingIntent
オブジェクトのインテント フラグを修正しました。- API レベル 7 以上でライブラリをビルドできるように、gridlayout ライブラリ プロジェクトから未使用の属性を削除しました。
- gridlayout ライブラリ プロジェクト用の
.classpath
ファイルと.project
ファイルを追加しました。
- v4 サポート ライブラリの変更点:
-
ShareCompat
を追加しました。このクラスは、共有データをソースアプリに関連付けるための新しいメタデータなど、ソーシャル共有アプリのコンテンツを送受信するためのヘルパークラスを提供します。また、このクラスは Android 4.0 の新しいShareActionProvider
とも互換性のある統合を提供します。- ナビゲーションに関する Android 設計ガイドラインの実装をサポートするため、
NavUtils
とTaskStackBuilder
を追加しました。これらの追加には、アクションバーの「上へ」ボタンをバージョン間で実装する方法も用意されています。このパターンの実装例については、(<em><sdk></em>/samples/<em><platform></em>/AppNavigation
)の AppNavigation サンプルをご覧ください。 - 標準化されたシステム通知を作成するための Android 3.0 の
Notification.Builder
ヘルパークラスの互換性実装を提供するNotificationCompat.Builder
を追加しました。
- v4 サポート ライブラリの変更点:
-
- ViewPager の変更点:
ViewPager
の装飾ビューのサポートを追加しました。 装飾ビューは、XML レイアウトのページャーの子ビューとして指定できます。- ページのタイトル文字列を指定する
PagerAdapter.getPageTitle()
を追加しました。デフォルトでは、各ページのタイトルは指定されません。 PagerTitleStrip
を追加しました。これは非対話型のタイトル ストリップであり、ViewPager の子として追加できます。デベロッパーは、テキストの外観と色、レイアウトのサイズ、グラビティの情報を指定できます。- アダプターの実装でクラスキャストを回避するために、View ではなく ViewGroup オブジェクトを受け取るように
PagerAdapter
メソッドを更新しました。 - ランチャー スタイルのフリング動作を使用するように
ViewPager
を更新しました。 - ユーザー インターフェースの操作とテストの自動化に関するバグを修正しました。
- Fragment のサポート:
setStartDeferred()
メソッドをsetUserVisibleHint(boolean)
に変更しました。- オフスクリーン ページの遅延開始を追加してパフォーマンスを改善しました。
- Accessibility API のサポート:
- null ではなく空のリストを返すように
AccessibilityDelegateCompat
メソッドを更新しました。 - v4 サンプルで必要な新しい API を追加しました。
- null ではなく空のリストを返すように
- ViewPager の変更点:
- v4 サポート ライブラリの変更点:
-
- Accessibility API のサポート:
View.AccessibilityDelegate
をサポートするためAccessibilityDelegateCompat
を追加しました。AccessibilityEvent
をサポートするためAccessibilityEventCompat
を追加しました。AccessibilityManager
をサポートするためAccessibilityManagerCompat
を追加しました。AccessibilityNodeInfo
をサポートするためAccessibilityNodeInfoCompat
を追加しました。AccessibilityRecord
をサポートするためAccessibilityRecordCompat
を追加しました。AccessibilityServiceInfo
をサポートするためAccessibilityServiceInfoCompat
を追加しました。ViewGroup
でユーザー補助機能をサポートするためViewGroupCompat
を追加しました。View
でユーザー補助機能をサポートするようにViewCompat
を変更しました。
- ViewPager の変更点:
- ページ間の余白のサポートを追加しました。
オプションの
Drawable
を指定して、マージンを埋めることができます。 EdgeEffect
のサポートを追加しました。- キーボード ナビゲーションのサポートを追加しました
- 現在のページの両側に保持されるページ数を制御するサポートが追加されました。
- タップ操作に関する物理学的特性を改善しました。
- ユーザー インターフェースの動作に関するバグを修正しました。
- ページ間の余白のサポートを追加しました。
オプションの
- Accessibility API のサポート:
- v4 サポート ライブラリの変更点:
-
EdgeEffect
をサポートするためEdgeEffectCompat
を追加しました。LocalBroadcastManager
を追加しました。これにより、アプリをグローバルにブロードキャストすることなく、1 つのアプリ内でインテントを簡単に登録して受信できるようになりました。- Android 2.3 以降で
View
のオーバースクロール モードを確認して設定するViewCompat
のサポートを追加しました。 - Fragment API の変更点:
- 新しいメニューの表示を制御するための新しい API を追加しました。
- カスタム アニメーション API を追加しました。
- 構成以外のカスタム インスタンス データを保持するための API を
FragmentActivity
に追加しました。 - 各種バグを修正しました。
- Froyo 以前のバージョンのプラットフォームで実行している場合に
AsyncTask
をキャンセルする際に発生する問題を引き起こしていたLoader
のバグを修正しました。サポートコードは独自のバージョンのAsyncTask
を使用して、すべてのプラットフォーム バージョンで同じ動作を維持するようになりました。
- v4 サポート ライブラリの変更点:
-
Fragment.SavedState
のサポートを追加しました。- 新しい
MotionEvent
API をサポートするためMotionEventCompat
を追加しました。 - 新しい
VelocityTracker
API をサポートするためVelocityTrackerCompat
を追加しました。 - 新しい
ViewConfiguration
API をサポートするためViewConfigurationCompat
を追加しました。 - すべての新しい API(サポート ライブラリでのみ利用可能)。これにより、水平方向のページ設定を使用する UI を作成し、ユーザーはコンテンツ ビュー間を左右にスワイプできます。これをサポートするクラスは次のとおりです。
ViewPager
: ユーザーがスワイプできる子ビューのレイアウトを管理するViewGroup
。PagerAdapter
: 各ページを表すビューでViewPager
にデータを入力するアダプター。FragmentPagerAdapter
: フラグメント間をフリップするためのPagerAdapter
の拡張。FragmentStatePagerAdapter
: ライブラリのFragment.SavedState
サポートを使用してフラグメント間を切り替えるためのPagerAdapter
の拡張機能。
- 新しい v13 サポート ライブラリ:
-
- 水平方向のページ設定をサポートする
FragmentPagerAdapter
とFragmentStatePagerAdapter
が含まれています。これらは v4 サポート ライブラリに追加された API とまったく同じですが、Android 3.2 の他のプラットフォーム コンポーネントに依存します。Android 3.2 以降向けに開発している場合は、v4 ではなくこのライブラリを使用します(v4 ライブラリの他のすべての API は、API レベル 13 ですでに使用可能です)。
- 水平方向のページ設定をサポートする
- v4 ライブラリの変更点:
-
- フラグメント アニメーションのサポート
Fragment.onActivityResult()
のバグを修正
リビジョン 22
2015 年 3 月
リビジョン 21.0.3
2014 年 12 月
リビジョン 21.0.2
2014 年 11 月
リビジョン 21.0.1
2014 年 11 月
リビジョン 21
2014 年 10 月
リビジョン 20
2014 年 7 月
リビジョン 19.1.0
2014 年 3 月
リビジョン 19.0.1
2013 年 12 月
リビジョン 19
2013 年 10 月
リビジョン 18
2013 年 7 月
リビジョン 13
2013 年 5 月
リビジョン 12
2013 年 2 月
リビジョン 11
2012 年 11 月
リビジョン 10
2012 年 8 月
リビジョン 9
2012 年 6 月
リビジョン 8
2012 年 4 月
リビジョン 7
2012 年 3 月
リビジョン 6
2011 年 12 月
注: サポート ライブラリ API のリファレンスは、フレームワーク リファレンスで利用可能になりました(例: android.support.v4.app
)。
リビジョン 5
2011 年 12 月
リビジョン 4
2011 年 10 月
リビジョン 3
2011 年 7 月
リビジョン 2
2011 年 5 月
リビジョン 1
2011 年 3 月
v4 ライブラリの初回リリース。