このページでは、以前のサポート ライブラリ パッケージのリリースについて詳しく説明します。最新のサポート ライブラリ リリースについては、最近のサポート ライブラリのリビジョンをご覧ください。
リビジョン 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
の関連付けを要求せずに float 値をアニメーション化できるようになりました。
詳しくは、スプリング アニメーションとフリング アニメーションのプレビュー ページをご覧ください。
- 新しい
-
XML でのフォントのサポート:
ResourcesCompat.getFont
により、TextView.setTypeface()
で使用できるフォント リソース(フォントファミリー XML を含む)を読み込むことができます。- AppCompat を使用する場合、TextView で
android:fontFamily
の XML 属性によるフォント リソースまたは XML フォント ファミリーの指定がサポートされました。 - XML フォント ファミリーを使用してスタイルや太さが異なるフォント ファミリーを作成できます(サポート ライブラリのクラスを使用して作成する場合は、
app:
属性とandroid:
属性を使用してください)。
- ダウンロード可能なフォント:
- 新しい
FontsContractCompat
を使用して、アプリ内にバンドルする代わりにフォント プロバイダにフォントをリクエストできるようになりました。 - XML フォントをリクエストして、レイアウトで使用することもできます。
- 新しい
- 絵文字互換性ライブラリ:
EmojiCompat
で、指定されたCharSequence
を処理してEmojiSpans
を追加できるようになりました。EmojiTextView
などのウィジェットで絵文字を表示できます。FontRequestEmojiCompatConfig
を使用して、フォント プロバイダに絵文字フォントをリクエストできます。
- TextView の自動サイズ設定:
TextViewCompat
の新しいメソッドと XML 属性を使用してTextView
での自動サイズ調整を制御できるようになりました。
- シークをサポートした Leanback 再生コントロール:
-
- 新しい
PlaybackTransportRowPresenter
により、SeekBar を使用して再生コントロールをレンダリングできるようになりました。 PlaybackTransportRowPresenter
で機能する新しいPlaybackTransportControlGlue
により、シークがサポートされました。- アプリ向けの新しい基本クラス
PlaybackSeekDataProvider
により、PlaybackTransportControlGlue
でシーク サムネイルを表示できるようになりました。
- 新しい
- プリファレンス データストア:
PreferenceDataStore
で、Preference
とPreferenceManager
の新しいメソッドを使用して設定する独自のプリファレンス ストレージを実装できるようになりました。
既知の問題
- Google Play サービスとのダウンロード可能なフォントと絵文字の互換性の統合に対応しているのは、Google Play 開発者サービス v11 以降のみです。このバージョンは現在、Google Play 開発者サービスベータ版プログラムから入手できます。
バグの修正
MediaBrowserCompat.search()
API が機能しない(AOSP 問題 262170)ViewCompat.postInvalidateOnAnimation()
が例外をスローする(AOSP 問題 80146)onActivityCreated()
が破損したアクティビティのフラグメントを呼び出すRecyclerView.isComputingLayout()
がプリフェッチ中に true を返す-
Fade
の遷移が中断され元に戻された場合に、View
がアニメーションを最初から開始する(Android Framework から修正を移植) Transition.Fade
がView
の初期アルファを無視する(AOSP 問題 221820)
リビジョン 26.0.0 Alpha 1
(2017 年 3 月)
26.0.0-alpha1 はプレリリース版である点にご注意ください。プレリリース版の API サーフェスは変更される場合があり、サポート ライブラリの最新安定版の機能やバグ修正が実装されているとは限りません。
重要な変更点
注: SDK の最小バージョンが 14 に引き上げられました。その結果、API 14 未満との互換性のみを目的としていた API の多くがサポート終了になりました。該当する API を使用するクライアントは、サポート終了となった各 API のリファレンス ページに記載されている同等のフレームワークに移行する必要があります。
- Support-Percent モジュールはサポートが終了になりました。このモジュールのクライアントは、SDK Manager の個別のアーティファクトとして提供される新しい ConstraintLayout ウィジェットに移行する必要があります。
- Support-Fragment モジュールは、Support-Media-Compat モジュールに依存しなくなりました。
新しい API
O プレビューで追加されたプラットフォーム API の下位互換性をサポートするために、新しいクラス、メソッド、定数が追加されました。
IME_FLAG_NO_PERSONALIZED_LEARNING
: IME で、ブラウザなどのプライベート モードを持つアプリの「学習なし」フラグをリッスンできるようになりました。この機能により、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
でパスのモーフィングとパス補完がサポートされました。パスのモーフィングにより、1 つのパス(android:valueFrom
として指定)から別のパス(android:valueTo
として指定)にシェイプを変更できるようになり、複雑で魅力的な視覚効果をもたらします。パス補完により、AnimatedVectorDrawableCompat
の補完をパスとして指定できます(補完の 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) - テキストが XML によって設定された場合に
TextInputLayout
でヒントとテキストがオーバーレイされる(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 に置き換える場合を考えてみます。この場合に、1 つ目の演算がキャンセルされ、フラグメント B のみが追加される場合が考えられます。これは、フラグメント A が作成や破棄のライフサイクルを経ない可能性があるということです。
この最適化の副作用は、予想された順序以外のところでフラグメントの状態が変更される可能性があることです。たとえば、1 つ目のトランザクションがフラグメント A を追加し、2 つ目がフラグメント B を追加、さらに 3 つ目がフラグメント A を削除したとします。最適化が行われなければ、フラグメント A はフラグメント B が追加された後に削除されることから、フラグメント B が作成されている間にフラグメント A も存在すると考えられます。最適化が行われる場合は、フラグメント A の作成と破棄は最適化によって削除される可能性があるため、フラグメント B が作成されている間にフラグメント A が確実に存在するとは想定できません。
この最適化はデフォルトで無効になっています。最適化を有効にするには、
FragmentTransaction.setAllowOptimization(true)
を呼び出します。 - フラグメントは、
Fragment.postponeEnterTransition()
とFragment.startPostponedEnterTransition()
を使用する準備ができるまで遷移とアニメーションを延期できるようになりました。この API は、アクティビティの遷移で使用されるActivity.postponeEnterTransition()
とActivity.startPostponedEnterTransition()
に類似しています。
修正された問題
MediaSessionCompatTest
がIllegalArgumentException
で失敗する- 25.1.0 で
DetailsFragment.installTitleView()
が呼び出されない - フラグメント トランザクションにより、終了時にゴーストビューが維持される(AOSP 問題 230679)
BottomNavigationView
がアイテムのアイコンとテキスト間にスペースを要求する(AOSP 問題 230653)- 選択したリスナーが、新しい
PlaybackFragment
とPlaybackSupportFragment
から見つからない TextInputLayout
のフォーカスが、サポート ライブラリ バージョン 25.1.0 のエミュレータで正しく変更されない(AOSP 問題 230461)BottomNavigationView
のメニューを置き換えることができない(AOSP 問題 230343)RecyclerView
をStaggeredGridLayoutManager
と併用するとフルスパン アイテムに対しクラッシュする(AOSP 問題 230295)setCallback(null)
を使用している場合にMediaSessionCompat
でクラッシュが発生する- 再生行が変更された場合に
PlaybackGlueHostOld
とPlaybackSupportGlueHostOld
がコールバックを通知しない PlaybackOverlayFragment
の/test
の例が再生を開始できないRecyclerViewFocusRecoveryTest
が API 15 で失敗する- 「スクリーンショット」行が画面の上部にフォーカスされる
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
が API 15 でクラッシュする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
など)を指定した場合、クライアントは必要な状態(「無効」、「押下状態」など)をすべて提示する必要があります。これは、フレームワークの色合い調整機能の使用時にウィジェットの色が指定される方法と整合します。
新しい API と変更された API
- ExifInterface サポート ライブラリを追加しました。このライブラリは、JPEG と Raw 形式のファイルから Exif 情報を読み取り、JPEG 形式の画像ファイルに Exif 情報を設定するサポートを切り離します。
Snackbar
で、アプリがカスタム コンテンツを表示できるようにリファクタリングされました。BaseTransientBottomBar
は、一般的なスライドとアニメーションの動作を公開する新たなベースクラスです。- 新しい leanback.media パッケージを追加しました。このパッケージには、メディア プレーヤーを Android TV アプリケーションに統合するためのヘルパークラスが含まれます。
- レイアウトと属性をカスタマイズ可能な
SeekBarPreference
を v7 preference サポート ライブラリに追加しました。 - v4 サポート ライブラリに
ArraySet
クラスを追加しました。このクラスは、API レベル 13 で導入されたフレームワークのArraySet
クラスに対応しています。 RecyclerView
RecyclerView アイテム プリフェッチの改善:- ネストされた
RecyclerView
のプリフェッチによって、別のスクロール内のRecyclerView
のRecyclerView
から、プリフェッチの実行数を制御する API を使用して、コンテンツをプリフェッチできます。 - スクロールとフリング中のプリフェッチを有効にするために実装するカスタム
LayoutManager
オブジェクトに API を追加しました。 - フレーム間の時間にできるだけ多くの作成やバインディング作業のみを行うように、プリフェッチを改善しました。
- ネストされた
修正された問題
- パスワードの表示設定の切り替えが、ユーザー補助機能のテストに失敗する。
- Appcompat が、L より前のデバイスで
state_enabled
を優先しない。 RecyclerView
にフォーカス回復メカニズムを追加しました。これによって、Android TV デバイスなどで DPAD ナビゲーションを使用した場合のサポート設定フラグメントのフォーカスの破損も修正されました。- Leanback: ヘッダーを無効にし、アダプターが空の状態で BrowseFragment がクラッシュする。
- Appcompat:
AlertDialog
が長すぎる。 releasePermission()
を呼び出す必要があるときにInputContentInfoCompat
がrequestPermission()
を呼び出す。MediaBrowserCompat
がクラッシュする。- CoordinatorLayout で、可視性が
GONE
に設定されているときにビューを測定または配置する。 - API レベル 24 未満で
AnimatedVectorDrawableCompat
の色合いを調整できない。 - Leanback ライブラリが偽の lint エラーをトリガーする。
- palette ライブラリによってすべての API レベルでテストエラーが発生する。
RecyclerView
が Leanback でテストに失敗する。- ビューホルダーをリサイクルするときに
RecyclerView
がクラッシュする(AOSP 問題 225762)。 - バックスタックで
Fragment.onDestroy()
のフラグメントが呼び出されない。 - 折りたたみ時に
CollapsingToolbarLayout
のスクリムが描画されない。 CoordinatorLayout.offsetChildByInset()
がIllegalArgumentException
をスローする。RecyclerView
アイテムのアニメーション化によって内部のRecyclerView
が切り離され、この先のプリフェッチを妨げてしまう。- 関連付けられた
RecyclerView
アイテムをネスト、プリフェッチできない。 - プリフェッチしたネストされた
RecyclerView
アイテムのデータが、最初のレイアウト中に破棄される。 - 2 つのドラッグ イベントが同じ位置に発生した場合に
RecyclerView
のプリフェッチが失敗する。 - RenderThread のレンダリング中に
RecyclerView
が推測的にレイアウトする。 - ドローアブルに変換されたナイトカラー リソースが、Resources キャッシュから正しくパージされない。
FloatingActionButton
: プログラムによる BackgroundTintList の設定が正しく機能しない(AOSP 問題 227428)。TextInputLayout
: 書体が ErrorView に設定されていない(AOSP 問題 227803)。- API 23 未満で
TextInputLayout
が常に薄いエラー色で表示される(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 月)
修正された問題
- デベロッパーが指定した end drawable を不必要に上書きしないように、
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)CollapsingToolbarLayout
内の画像がfitsSystemWindows=true
によって正しくスケーリングできない。(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
ViewPager
、NestedScrollView
、ExploreByTouchHelper
など、さまざまな UI 関連のコンポーネントを実装します。-
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 App を開くかどうかを制御できます(Instant App はまだ一般提供されていない点にご注意ください)。Instant App を有効または無効にするには、
CustomTabsIntent.Builder.setInstantAppsEnabled()
を呼び出すか、EXTRA_ENABLE_INSTANT_APPS
を指定します。デフォルトでは、この機能が利用可能になった場合にカスタムタブは Instant App をデフォルトで有効にします。 TextInputLayout
で、マテリアル デザイン仕様からパスワードの表示設定の切り替えのサポートが追加されました。- 新しい
android.support.transition
パッケージによって、移行フレームワークが API レベル 14 以上に移植されます。詳しくは、android.support.transition
のリファレンスをご覧ください。 - Custom Tabs サポート ライブラリで、セカンダリ ツールバーでの
RemoteViews
の使用に対するサポートが追加されました。既存のsetToolbarItem()
メソッドのサポートは終了しました。 AppCompatResources
で、新しいgetDrawable()
メソッドを使用してリソース ID から<vector>
(API レベル 9 以上の場合)または<animated-vector>
(API レベル 11 以上の場合)を読み込む機能が追加されました。CoordinatorLayout
で、ビューのインセットの定義と、他のビューがビューのインセットを回避するように指定することをサポートするようになりました。これにより、アプリでSnackbar
の方法からFloatingActionButton
が動作する方法に類似した行動パターンを任意のビューの子に対して複製できるようになります。詳しくは、LayoutParams.insetEdge
とLayoutParams.dodgeInsetEdges
のリファレンス ドキュメントをご覧ください。- 新しい
DiffUtil
クラスで、2 つのコレクションの間の差を計算し、RecyclerView.Adapter
での使用に適した更新操作の一覧をディスパッチできるようになりました。 -
Flings に対するカスタム動作をサポートするために
RecyclerView.OnFlingListener
が追加されました。SnapHelper
クラスには、子ビューのスナップ用に特化した実装が用意されています。LinearSnapHelper
クラスは、この実装を拡張して、ViewPager
に類似したスナッピング動作を中央に配置できます。 - Custom Tabs ライブラリを使用して、クライアントは
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 で修正されています。
SwipeRefreshLayout
インジケーターが最初の測定パスの前にsetRefreshing(true)
が呼び出されたときに表示されることを確認してください(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 Preview との互換性を確保するための新しいgetHintDisplayActionInline()
とsetHintDisplayActionInline()
メソッドが用意されています。これらのメソッドを使用すると、アプリケーションは通知とともにアクションをインラインで表示するように指定できます。Fragment.setUserVisbileHint()
の呼び出しによって、まだコミットされていない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)
- CollapseingToolbarLayout が、上部または下部に余白を持つ固定可能な子を処理しない(AOSP 問題 213001)
- Leanback ブラウズ タイトルが RTL 配置に対応していない(AOSP 問題 213461)
- PagerTabStrip が継承されたアノテーションがないため表示されなくなる(AOSP 問題 213359)
- Boolean を使用して条件フラグを設定すると、データ バインディングで NullPointerException がスローされる(AOSP 問題 191841)
- CoordinatorLayout が setFitsSystemWindows() に応答しない(AOSP 問題 212720)
- 初期状態を設定すると BottomSheetBehavior がクラッシュする(AOSP 問題 203114)
- ページ インデックスが大きい値の場合に、ViewPager がページをスキップする(AOSP 問題 211734)
- BottomSheetBehavior が動的レイアウトでは機能しない(AOSP 問題 205226)
リビジョン 24.0.0
2016 年 6 月
- V4 サポート ライブラリの変更点:
-
- 同期コミット用に
Fragment.commitNow()
を追加しました - 複数人での会話用に
NotificationCompat.MessagingStyle
を追加しました NotificationManagerCompat.areNotificationsEnabled()
とgetImportance()
を追加しましたMediaSessionCompat
でMediaSession
の機能をミラーリングし、setMediaButtonReceiver()
を自動的に呼び出さなくなりました
注: バージョン 24.0.0 の
MediaBrowserServiceCompat
のみに、API 24 以降の Android の将来バージョンとの上位互換性があります。以前のバージョンを使用している場合は、互換性を確保するためにこのバージョンに更新してください。 - 同期コミット用に
- v7 appcompat ライブラリの変更点:
-
- テーマの
ColorStateList
オブジェクトを XML から参照するためのサポートを追加しました。
- テーマの
- Design サポート ライブラリの変更点:
-
AppBarLayout
に対するStateListAnimator
を使用した昇格の処理の改善
- 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
の変更を元に戻しました。(問題 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)AppBarLayout
のenterAlways
に関するバグを修正しました。(問題 203661)TextInputLayout
がEditText
オブジェクトの背景色フィルタを不必要にクリアするバグを修正しました。(問題 203357)
リビジョン 23.2.1
2016 年 3 月
- V4 サポート ライブラリの変更点:
-
- API レベル 17~19 での
DrawableCompat.wrap()
とLayerDrawable
の例外を修正しました。(問題 201817) ViewDragHelper.shouldInterceptTouchEvent()
のArrayIndexOutOfBoundsException
を修正しました。(問題 182262)- サイズ変更のスクロール計算に関連する
ViewPager
のバグを修正しました。 DrawerLayout.DrawerListener
が設定されていない状態でDrawerLayout.removeDrawerListener()
を呼び出してしまう場合のNullPointerException
を修正しました。(問題 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
のキャンセル ボタンが非表示になる互換性の問題を修正しました。(問題 202156) - API レベル 21 以下の
AppCompatSpinner
でクラッシュが発生する互換性の問題を修正しました。(問題 202246) app:textAllCaps = "false"
のスタイルが機能しない問題を修正しました。(問題 202117)SearchView
の復元時に発生するクラッシュを修正しました。(問題 201836)- AppCompat を使用してドローアブル リソースの色合いを調整するときに発生するメモリリークを修正しました。(問題 202379)
- API レベル 11 以下における
KeyEvent
の問題を修正しました。(問題 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)
:“YMD”
または“MDY”
などの適切な 3 文字のString
を渡して目的の日付形式を設定します。または、datePickerFormat
の XML 属性を使用します。
- v7 RecyclerView ライブラリの変更点:
-
RecyclerView
に AutoMeasure と呼ばれるオプトインの機能が追加されました。これによりRecyclerView.LayoutManager
が容易にコンテンツをラップしたり、RecyclerView
の親が指定した測定のさまざまな仕様を処理したりできます。RecyclerView
の既存のすべてのアニメーション機能をサポートします。-
- カスタムの
RecyclerView.LayoutManager
をお持ちの場合は、setAutoMeasureEnabled(true)
を呼び出して新しい AutoMeasure API の使用を開始します。すべての組み込みRecyclerView.LayoutManager
オブジェクトは、デフォルトで自動測定を有効にします。 RecyclerView.LayoutManager
は、スクロール方向についてMATCH_PARENT
など一部のRecyclerView.LayoutParams
の設定を無視しないようになりました。注: これらの制限の解除によって、レイアウトで予期しない動作が発生することがあります。正しいレイアウト パラメータを指定するようにしてください。
- カスタムの
- ペイロード情報によって
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
クラスにはレイアウト ライフサイクルの正確な時点でデータを収集する柔軟性が備わっています。この情報は後でアニメーション コールバックに渡されます。
- 下位互換性のないこの 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 の Preference サポート ライブラリの変更点:
-
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()
メソッドを使用してToolbar
クラスをActionBar
として動作するように設定している場合に、ハードウェア ボタンが機能しない問題を修正しました。(問題 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 月
- 新しいサポート ライブラリを追加しました。
サポート ライブラリの変更点の全一覧については、Support Library API の相違点レポートをご覧ください。
リビジョン 22.2.1
2015 年 7 月
- Design サポート ライブラリの変更点:
-
- アニメーションのプログラムによるトリガーに対応するよう、
hide()
とshow()
メソッドをFloatingActionButton
クラスに追加しました。 - 閉じられるか、別のスナックバーが表示されるまでスナックバーを表示するように、
LENGTH_INDEFINITE
定数をSnackbar
クラスに追加しました。setActionTextColor(int)
とsetActionTextColor(ColorStateList)
のメソッドも追加しました。 - 現在選択されているタブを取得するように
getSelectedTabPosition()
メソッドをTabLayout
クラスに追加しました。 - 完全な Fluent API をメソッド チェーンの
android.support.v7.app.NotificationCompat.MediaStyle
クラスに提供しました。 - アイテムの一括挿入に対応できるように便利なメソッドを
RecyclerView
に追加しました。
- アニメーションのプログラムによるトリガーに対応するよう、
サポート ライブラリの変更点の全一覧については、Support Library API の相違点レポートをご覧ください。
リビジョン 22.2.0
2015 年 5 月
- Design サポート ライブラリを追加:
-
EditText
のヒントとエラーテキストをフローティング ラベルとして表示するためにTextInputLayout
を追加しました。- デフォルト サイズまたはミニサイズをサポートするフローティング操作ボタンとして、メイン アクションを実装するための
FloatingActionButton
を追加しました。 - アニメーション スナックバーに任意のアクションを含む軽量フィードバックを提供するための
Snackbar
を追加しました。 - 固定とスクロール可能なタブと、
ViewPager
との簡単な統合を実装するためのTabLayout
を追加しました。 - メニュー リソースを経由してメニュー アイテムを拡張する機能を含む、ナビゲーション ドロワー コンテンツを実装するための
NavigationView
を追加しました。 - 兄弟ビュー間の依存関係を構築し、
CoordinatorLayout.Behavior
によってコンポーネント間のスクロールを容易にする汎用レイアウトとしてCoordinatorLayout
を追加しました。Design ライブラリのコンポーネントの多くは、CoordinatorLayout
の子であることに基づいています。 - 画面外にスクロールする、下方向へのスクロールに反応して表示されるようになる、または画面内外へスクロールする前に折りたたむ / 折りたたみを解除することによってスクロール イベントに反応できるように、
Toolbar
とその他のビュー(TabLayout
など)のコンテナとしてAppBarLayout
を追加しました。 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
クラスに追加しました。
- 現在のウィンドウから開始されるアクション モードを処理するために、
サポート ライブラリの変更点の全一覧については、Support Library API の相違点レポートをご覧ください。
リビジョン 22.1.0
2015 年 4 月
- annotations ライブラリの変更点:
-
- 拡張コードの検査をサポートするために、Annotations ライブラリを追加しました。アノテーションは変数、パラメータに添付するメタデータタグとして追加され、メソッドの戻り値、渡されたパラメータ、ローカルの変数とフィールドを検査するための戻り値を返します。
- v4 サポート ライブラリの変更点:
-
- 色に関連した一連のユーティリティ メソッドを提供するために、
ColorUtils
クラスを追加しました。 - すべての API レベル 4 以降のデバイスで、
setTint()
、setTintList()
、setTintMode()
を使用できるようにunwrap()
とwrap()
のメソッドをDrawableCompat
クラスに追加しました。 - トレース イベントをシステムのトレース バッファに書き込んだ後に、Systrace ツールを使用して収集し視覚化できる
TraceCompat
クラスを追加しました。 - 循環整数配列のデータ構造を作成するために
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 ライブラリの変更点:
-
AppCompatAutoCompleteTextView
、AppCompatButton
、AppCompatCheckBox
、AppCompatCheckedTextView
、AppCompatEditText
、AppCompatMultiAutoCompleteTextView
、AppCompatRadioButton
、AppCompatRatingBar
、AppCompatSpinner
、AppCompatTextView
を含む色合い調整のサポートを Appcompat ウィジェットに追加しました。- サポート ライブラリのアクションバー機能を使用するアクティビティのベースクラスとして、
AppCompatActivity
を更新しました。サポート終了となったActionBarActivity
の代替です。 - AppCompat がコールバックを実行できるようにするために実装する、
AppCompatCallback
インターフェースを追加しました。 - AppCompat のサポートを任意のアクティビティに拡張する際に委任を目的として使用できる、
AppCompatDelegate
の抽象クラスを追加しました。 - AppCompat のテーマ ダイアログの基本クラスとして
AppCompatDialog
クラスを追加しました。 - AppCompat をテーマとする
AlertDialog
を提供するために、スピナー スタイルのAlertDialog
クラスとAlertDialog.Builder
クラスを追加しました。 Palette
インスタンスを生成するためにPalette.Builder
クラスを追加しました。- 返された
Palette.Builder
インスタンスにより Palette の生成を開始するため、from(Bitmap)
メソッドをPalette
クラスに追加しました。 Palette.generate()
とPalette.generateAsync()
のメソッドのサポートを終了しました。
- 返された
getAbsoluteAlignment()
メソッドをGridLayout.Spec
クラスに追加しました。Toolbar
のスタイリングを目的としたapp:theme
の使用はサポートを終了しました。すべての API レベル 7 以降のデバイスのツールバーではandroid:theme
を使用でき、android:theme
は API レベル 11 以降のデバイスのすべてのウィジェットをサポートするようになりました。
- v17 Leanback ライブラリの変更点:
-
- 多段階の意思決定フローの作成をサポートするために
GuidedStepFragment
、GuidanceStylist
、GuidedActionsStylist
を追加しました。
- 多段階の意思決定フローの作成をサポートするために
- v7 recyclerview ライブラリの変更点:
-
- リストの順序でアイテムを表示し、リストへの変更の通知を行うために
SortedList
クラスを追加しました。 - 並べ替えられたリストを
RecyclerView.Adapter
クラスに結合できるSortedListAdapterCallback
クラスを追加しました。
- リストの順序でアイテムを表示し、リストへの変更の通知を行うために
- v8 renderscript ライブラリの変更点:
-
- ヒストグラム フィルタとして使用するための
ScriptIntrinsicHistogram
クラスを追加しました。 - 2D 割り当てのサイズ変更を実行するための
ScriptIntrinsicResize
クラスを追加しました。
- ヒストグラム フィルタとして使用するための
- v4 サポート ライブラリの変更点:
-
- 指定された特定のリソース ID、画面密度、テーマのドローアブル オブジェクトを返すように
getDrawable()
メソッドを更新しました。 - ビューがユーザー補助イベントをトリガーするかどうかを示すことができるように、
setImportantForAccessibility()
メソッドを追加しました。 - ステータスバーのバックグラウンド ドローアブルを取得できるように
getStatusBarBackgroundDrawable()
メソッドを追加しました。 - Android Auto のメッセージング アプリが、追加の通知データを取得できるようにするためのメソッドを
NotificationCompat.CarExtender.UnreadConversation
クラスに追加しました。 - 円形レイアウトの直径を返す
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 実行可能ファイル(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
を更新しました。これには、menu-to-arrow アニメーションが含まれます。- Android 5.0 以前のデバイスでの実行時に、theme 属性を介して色合いを調整できるように、共通のユーザー インターフェース ウィジェットを更新しました。
- Android 4.0(API レベル 14)で追加された
Switch
ウィジェットのバックポートであるSwitchCompat
を追加しました。
- 新しい v7 cardview ライブラリ:
-
CardView
ウィジェットを追加しました。これによって、データ項目を表示するためのマテリアル デザインとの互換性を維持した実装が可能になります。
- 新しい v7 recyclerview ライブラリ:
-
RecyclerView
ウィジェットを追加しました。これによって、大規模なデータセットに限定されたウィンドウを表示できるようにする柔軟なリスト表示が可能になります。
- 新しい v7 palette ライブラリ:
-
Palette
クラスを追加しました。これにより、画像から特徴的な色を抽出できるようになります。
- 新しい v17 Leanback ライブラリ:
-
BrowseFragment
、DetailsFragment
、PlaybackOverlayFragment
などのテレビのユーザー インターフェースを作成するためのサポートを追加しました。 これらのユーザー インターフェース ウィジェットの使用方法の詳細については、TV 再生アプリの作成をご覧ください。
- v4 サポート ライブラリの変更点:
-
- Android Wear の拡張通知機能のサポートを
NotificationCompat.WearableExtender
に追加しました。これによって、通知にウェアラブル固有の機能を指定できます。 NotificationCompat.Action.WearableExtender
を追加しました。これによって、ウェアラブル通知にアクションを追加できます。NotificationManagerCompat
を追加しました。これによって、ウェアラブル機能を適切にサポートする通知を行うことができます。RemoteInput
を追加しました。これにより、モバイル デバイスがウェアラブル端末に表示される通知から音声入力を受信できるようになります。SwipeRefreshLayout
でのタッチ フィードバックの処理を改善しました。
- Android Wear の拡張通知機能のサポートを
- v4 サポート ライブラリの変更点:
-
SwipeRefreshLayout
クラスを追加しました。これにより、ユーザーは垂直スワイプ ジェスチャーによってビューのコンテンツを更新できます。- ナビゲーション ドロワーに関するユーザー補助の問題を修正しました。
- v7 appcompat ライブラリの変更点:
-
- アクションバーの背景の問題を修正しました。
- v4 サポート ライブラリの変更点:
-
- 印刷の非同期処理を追加して
PrintHelper
を改善しました。 addChildrenForAccessibility()
メソッドのDrawerLayout
クラスの近似を修正しました。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)以前を実行するデバイスでは常に 1 つのファイル オブジェクトを返します。Android 4.4(API レベル 19)以降で実行している場合、これらのメソッドは複数のファイル オブジェクトを返す可能性があります。- Print API に対応し、最小限のコードで画像を印刷する
PrintHelper
クラスを追加しました。 - ポップアップ メニューに drag-to-open ユーザー インターフェースのサポートを追加しました。詳しくは、
PopupMenuCompat
とListPopupWindowCompat
をご覧ください。 AccessibilityNodeProviderCompat
へのfindFocus()
メソッドの追加、AccessibilityNodeInfoCompat
へのgetLiveRegion()
メソッドの追加と併せて、ユーザー補助サポートを改善しました。- 新しいスケーリング ジェスチャー メソッドにアクセスするためのヘルパークラス
ScaleGestureDetectorCompat
を追加しました。 - 右から左の方向に表示される言語表示での
ActionBarDrawerToggle
の問題を修正しました。 - タッチイベントを使用する、または他のビューに渡すことができるように
AutoScrollHelper
のオプションを変更しました。
- v7 mediarouter ライブラリの変更点:
-
- メディアの再生キュー、HTTP ヘッダー値とメディアの再生時間の設定に関するサポートを追加しました。
- メディア ルーターでメディア再生セッションを明示的に管理するための、明示的な start、get、end のセッション アクションを追加しました。
- v4 サポート ライブラリの変更点:
-
- ユーザー インターフェース
- 右から左と、左から右の方向に書式設定されたテキストを結合するテキスト文字列を処理する
BidiFormatter
を追加しました。 - 最初のレイアウト処理でページャが測定された幅が 0 のケースに対応できるよう、
ViewPager
を変更しました。 - プロジェクト コードの編集中に、測定の例外をスローしないように
DrawerLayout
とSlidingPaneLayout
を変更しました。
- 右から左と、左から右の方向に書式設定されたテキストを結合するテキスト文字列を処理する
- ユーザー補助
- カスタムビューのユーザー補助機能の実装を簡素化するために
ExploreByTouchHelper
を追加しました。 TYPE_VIEW_SCROLLED
のユーザー補助イベントを間違って入力するViewPager
の問題を修正しました。- ユーザー補助イベントを入力する際に発生する
ViewPager
の null ポインタの例外を修正しました。 CharSequence
入力をString
オブジェクトに変更することによりAccessibilityNodeInfoCompat
を簡略化しました。Object
を入力として使用するAccessibilityRecordCompat
コンストラクタのサポートを終了しました。
- カスタムビューのユーザー補助機能の実装を簡素化するために
- メディア
- 再生、一時停止、スキップ、その他のメディア操作のメディア トランスポートを管理するために、
TransportMediator
ヘルパークラスを追加しました。 - 1 つ以上のデバイス ディスプレイに対するディスプレイ出力を管理するため、
DisplayManagerCompat
を追加しました。
- 再生、一時停止、スキップ、その他のメディア操作のメディア トランスポートを管理するために、
- その他の変更点
- デバイス ウェイクアップ イベントを検出し、ハンドオフが完了する前にデバイスがスリープ状態に戻らないように作業を
Service
に渡す、一般的なパターンを実装するためのWakefulBroadcastReceiver
ヘルパークラスを追加しました。 - 2 つの新しい API である
commitContentChanged()
とrollbackContentChanged()
を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 サポート ライブラリの変更点:
-
- ウィンドウの端から引き出せるナビゲーション ドロワーを作成するための
DrawerLayout
を追加しました。 - さまざまな画面サイズに適切に合わせてリンクされた概要ビューと詳細ビューを作成するための、
SlidingPaneLayout
ウィジェットを追加しました。 DrawerLayout
とActionBar
関数を結合する方法としてActionBarDrawerToggle
を追加しました。- 親ビュー内でビューをドラッグできるようにする新しい共通コンポーネントとして、
ViewDragHelper
を追加しました。 Scroller
とOverScroller
の互換性をサポートするためにScrollerCompat
を追加しました。- アプリケーション間でのプライベート ファイルの共有を許可するために
FileProvider
を追加しました。 notifyDataSetChanged()
を呼び出さずに関連付けられているPagerAdapter
クラスが変更された場合に例外をスローするように、ViewPager
を更新しました。ViewPager
の子がソート順を描画することに関する問題を修正しました。- タップ タイムアウトと長押しのイベントの間に欠落している
onSingleTapConfirmed(MotionEvent)
の呼び出しをディスパッチするように、GestureDetectorCompat
を修正しました。
- ウィンドウの端から引き出せるナビゲーション ドロワーを作成するための
- 新しい v7 gridlayout ライブラリ:
-
GridLayout
のレイアウト オブジェクトをサポートするためにGridLayout
を追加しました。GridLayout
のレイアウト オブジェクト内に空白領域を作成するのに使用できるandroid.support.v7.widget.Space
を追加しました。
- v4 サポート ライブラリの変更点:
-
ViewPager
のインタラクションを改善しました。ViewPager
がページの選択を誤る原因となる場合があるバグを修正しました。ViewPager
のレイアウト中におけるremoveView()
メソッドの使用について修正を行いました。- 戻るボタンを使用して閉じると、検索テキストが消去されない
SearchViewCompat
の問題を修正しました。この修正はホスト API レベル 14 以降のみに適用されます。
- v4 サポート ライブラリの変更点:
-
- ユーザー インターフェース
- ネストされた
Fragment
クラスのサポートを追加しました。 FragmentManager
のデバッグを改善しました。- フラグメントとタブの操作によって
ListView
の状態が喪失するFragmentTabHost
の問題を修正しました。 - ユーザーに表示する
FragmentStatePagerAdapter
のヒントの問題を修正しました。 - アプリケーションのスクロール時の遷移動作をカスタマイズできるようにする、
PageTransformer
インターフェースをViewPager
に追加しました。 - 現在のリリースから
TaskStackBuilder
に新機能と修正を追加しました。 - 現在使用中の
PagerAdapter
を適切にトラッキングするようにPagerTitleStrip
を修正しました。 PagerTitleStrip
でのディスプレイのちらつき、位置、テキストの切り抜きに関する問題を修正しました。- 下線を引く際にパディングを適切に尊重するよう
PagerTabStrip
を修正しました。
- ネストされた
- ユーザー補助
AccessibilityEventCompat
に新しいユーザー補助ジェスチャーとタッチイベント タイプのサポートを追加しました。ViewCompat
に新しいユーザー補助 API のサポートを追加しました。performAccessibilityAction()
メソッドのサポートをViewCompat
に追加しました。
GestureDetectorCompat
によるジェスチャーのサポートを追加しました。- 新しい
AtomicFile
クラスを使用してファイルにアトミック操作を実行するためのサポートを追加しました。 make
メソッドのフルセットのサポートをIntentCompat
に追加しました。trimToSize()
メソッドをLruCache
のユーティリティ クラスに追加しました。CONNECTIVITY_ACTION
ブロードキャストから NetworkInfo を取得するようにConnectivityManagerCompat
を更新しました。
- ユーザー インターフェース
- v4 サポート ライブラリの変更点:
-
NotificationCompat
に加えて Android 4.1(API レベル 16)で導入された通知機能のサポートを追加しました。
- v4 サポート ライブラリの変更点:
-
- ユーザー インターフェースのサポート
PagerTabStrip
のサポートを追加してPagerTitleStrip
を上回る機能を実現しました。setAllCaps
のオプション、タイトルの配置、外観の改善、最小幅の制約、タッチ操作の問題を含むPagerTitleStrip
とPagerTabStrip
のさまざまなバグを修正しました。ViewPager
のページの余白に対するサポートを追加しました。これにより、ViewPager
クラスでは、マップなど、横方向のスクロール範囲の大きいコンテンツのページングをサポートできるようになりました。- サイズとデータ設定変更の問題、ページの位置、ユーザー操作、スクロールのトラッキング、キーボード操作に関する問題など、
ViewPager
の数多くのバグを修正しました。 - ターゲット フラグメントが存在しなくなった場合に
onActivityResult()
を適切に処理するようにする、選択イベントを非表示のフラグメントにディスパッチするようにするなど、Fragment
の多くのバグを修正しました。また、FragmentTransaction.replace()
の動作の向上と、ビューの外に移動されたフラグメントの処理に関する状態の改善も行いました。 postOnAnimation()
メソッドのサポートをViewCompat
に追加しました。- 使用可能な場合に Android 4.1(API レベル 16)の Up のナビゲーション機能を使用できるように
NavUtils
を更新しました。
- ユーザー補助
AccessibilityNodeInfoCompat
を含むユーザー補助サポートクラスを更新し、Android 4.1(API レベル 16) で行われた修正に準拠するようにしました。- ユーザー補助のスクロール操作のサポートを
ViewPager
に追加しました。
- 全般的な改善
- Android 4.1(API レベル 16)での API の変更を反映するように
TaskStackBuilder
を更新しました。 - サービスからの使用を許可するように
TaskStackBuilder
を拡張しました。 EXTRA_HTML_TEXT
のサポートをShareCompat
に追加しました。setNumber()
メソッドをサポートするようにNotificationCompat.Builder
を更新しました。isActiveNetworkMetered()
メソッドのサポートをConnectivityManagerCompat
に追加しました。
- Android 4.1(API レベル 16)での API の変更を反映するように
- ユーザー インターフェースのサポート
- v4 サポート ライブラリの変更点:
-
TaskStackBuilder
が生成したPendingIntent
オブジェクトのインテント フラグを修正しました。- gridlayout ライブラリ プロジェクトから未使用の属性を削除して、API レベル 7 以上でライブラリを構築できるようにしました。
- gridlayout ライブラリ プロジェクトに
.classpath
ファイルと.project
ファイルを追加しました。
- v4 サポート ライブラリの変更点:
-
- 共有データをソースアプリに帰属させる新しいメタデータなど、ソーシャル共有アプリケーションのコンテンツの送受信にヘルパークラスを提供する
ShareCompat
を追加しました。このクラスでは、Android 4.0 での新しいShareActionProvider
との互換性を維持した統合も可能です。 - Android Design のナビゲーション ガイドラインの実装をサポートするために
NavUtils
とTaskStackBuilder
を追加しました。これらの追加には、バージョン間でアクションバーの Up ボタンを実装する方法も含まれます。このパターンの実装例については、AppNavigation のサンプル(<em><sdk></em>/samples/<em><platform></em>/AppNavigation
)をご覧ください。 - 標準化されたシステム通知を作成するための Android 3.0 の
Notification.Builder
ヘルパークラスについて、互換性の実装を可能にするためNotificationCompat.Builder
を追加しました。
- 共有データをソースアプリに帰属させる新しいメタデータなど、ソーシャル共有アプリケーションのコンテンツの送受信にヘルパークラスを提供する
- v4 サポート ライブラリの変更点:
-
- ViewPager の変更点:
ViewPager
の装飾ビューのサポートを追加しました。装飾ビューは、XML レイアウトのページャーの子ビューとして指定できます。- デフォルトでは各ページのタイトルは指定されないため、ページのタイトル文字列を提供するために
PagerAdapter.getPageTitle()
を追加しました。 - ViewPager の子として追加できる非インタラクティブのタイトル ストリップとして
PagerTitleStrip
を追加しました。デベロッパーは、テキストの外観と色、レイアウトのサイズ、グラビティの情報を提供できます。 - アダプター実装でのクラスのキャストを回避するため、View オブジェクトではなく ViewGroup オブジェクトを使用するように
PagerAdapter
メソッドを更新しました。 - ランチャー スタイルのフリング動作を使用するように
ViewPager
を更新しました。 - ユーザー インターフェースの操作とテストの自動化に関するバグを修正しました。
- フラグメントのサポート:
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
を追加しました。- アプリケーションをグローバルにブロードキャストせずに、1 つのアプリケーションにインテントを簡単に登録して受信できるように
LocalBroadcastManager
を追加しました。 - Android 2.3 以降で
View
のオーバースクロール モードを確認して設定するViewCompat
のサポートを追加しました。 - Fragment API の変更点:
- 新しいメニューの表示を制御するための新しい API を追加しました。
- カスタム アニメーション API を追加しました。
- 非構成インスタンスのカスタムデータを保持できるよう
FragmentActivity
に API を追加しました。 - 各種バグを修正しました。
- Froyo 以前のバージョンのプラットフォームで実行中に、
AsyncTask
のキャンセルで問題が発生する原因となるLoader
のバグを修正しました。サポートコードでは、独自のバージョンのAsyncTask
を使用してすべてのプラットフォーム バージョンで同じ動作を維持するようになりました。
- v4 サポート ライブラリの変更点:
-
Fragment.SavedState
のサポートを追加しました。- 新しい
MotionEvent
API をサポートするためMotionEventCompat
を追加しました。 - 新しい
VelocityTracker
API をサポートするためVelocityTrackerCompat
を追加しました。 - 新しい
ViewConfiguration
API をサポートするためViewConfigurationCompat
を追加しました。 - 水平方向のページングを使用して UI を作成し、ユーザーがコンテンツ ビュー間で左右にスワイプできるようにする、すべての新しい API(サポート ライブラリでのみ使用可能)。これをサポートするクラスには次のクラスがあります。
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 ライブラリの初回リリース。