Android-support-v4.jarとAndroid-support-v7-appcompat.jarの違いを知りたかった。アプリケーションにappcompatアクションバーを追加する場合、Android-support-v7-appcompat.jarとAndroid-support-の両方を追加する必要がありますv4.jarまたはAndroid-support-v7-appcompat.jarのみ。
また、Android-support-v13.jarにはappcompatがありますか?
UPDATE
この質問に対する回答があったため、サポートライブラリに多くの変更が加えられました。良いことは、それも非常によく文書化されています。したがって、詳細と利用可能なサポートライブラリについては、 サポートライブラリドキュメント を読む必要があります。
サポートライブラリリリース26.0.0(2017年7月)以降、ほとんどのサポートライブラリでサポートされる最小APIレベルは、ほとんどのライブラリパッケージでAndroid 4.0(APIレベル14)に増加しました。
以下は Support Libraries Packages との違いです:
v4サポートライブラリ
このライブラリは、
Android 1.6(APIレベル4)Android 2.3(APIレベル9)Android 4.0(APIレベル14)以降。アプリケーションコンポーネント、ユーザーインターフェイス機能、アクセシビリティ、データ処理、ネットワーク接続、プログラミングユーティリティのサポートなど、他のライブラリと比較して最大のAPIセットが含まれています。v7ライブラリ
で使用するように設計されたいくつかのライブラリがあります
Android 2.1(APIレベル7)Android 2.3(APIレベル9)Android 4.0(APIレベル14)以降。これらのライブラリは特定の機能セットを提供し、互いに独立してアプリケーションに含めることができます。v7 appcompatライブラリ
このライブラリは、アクションバーのユーザーインターフェイスデザインパターンのサポートを追加します。
注:このライブラリは、v4サポートライブラリに依存しています。 AntまたはEclipseを使用している場合、v4サポートライブラリをこのライブラリのクラスパスの一部として含めるようにしてください。
そのため、v7を使用する場合は両方のjarが必要です。
Android-support-v13.jarの更新
このインターフェイスは、APIレベル27.1.0で廃止されました。フレームワークFragmentの代わりに Fragment を使用します。
v13サポートライブラリ
このライブラリは、Android 3.2(APIレベル13)以降で使用するように設計されています。 (FragmentCompat)クラスと追加のフラグメントサポートクラスを使用して、フラグメントユーザーインターフェイスパターンのサポートを追加します。
パッケージの詳細 を見ると、定義にあるようにクラス FragmentCompat があります。そのため、appcompatライブラリのすべてのクラスがありません。
サポートライブラリはコードライブラリ(クラスのコレクション)であり、新しく追加された機能を古いデバイスで使用できるようにします。
たとえば、Material DesignはAPI 21(Android 5.0-Lolipop)で導入されましたが、
v7-support libraryは、API 7(Android 2.1.x -Eclair)以降で使用できるようにします。
主なサポートライブラリの一部は
V4サポートライブラリ
V7サポートライブラリ
V8サポートライブラリ
v13サポートライブラリ
このライブラリには、APIレベル7以降で使用するように設計された機能があることを意味します。 V4(API 4以降を対象とした機能を含む)などについても同様です。
私を含め、これらの2つの用語を混同する人はほとんどいません。実際、v7 appcompatライブラリはv7サポートライブラリの一部です。 v7サポートライブラリは、主にAPI 7以降のマテリアルデザインとActionBarデザインパターンをサポートするために開発されました。
V7はより多くのサブカテゴリに分類できます
v7 appcompatライブラリ
v7 cardViewライブラリ
v7 appcompatライブラリには、次の主要なクラスActionBar、ActionBarActivity、ShareActionProviderがあります。
だから、
com.Android.support:appcompat-v7:21.0.+
gradleファイルの依存関係は、上記のクラスをインポートします。
その他のサポートライブラリ
Multidexサポートライブラリ(65,000以上のメソッドを持つアプリの作成用)
v17 Leanbackサポートライブラリ(Android TV用の重要なウィジェットを提供するサポートライブラリ)
サポートライブラリは、最小SDKバージョンがAPIレベル11未満の場合にのみ必要です。それ以外の場合は、Apiレベル11以降のプロジェクトにサポートライブラリを追加する必要はありません。
Android-support-v4.jar: Android APIレベル4以降のアプリケーションの開発を支援するAndroid.app
クラスをサポートします。アプリケーションのバックワード互換性を確保できるように、
Android-support-v7.jarこれは最近、最新のサポートライブラリの更新に追加されました。アクションバーユーザーインターフェイスのデザインパターンをAndroid 2.1(APIレベル7)以降に実装できるようにするActionBar。このクラスを使用するには、新しいActionBarActivity
クラスを拡張してアクティビティを実装する必要があります。
アプリケーションにappcompatアクションバーを追加する場合、Android-support-v7-appcompat.jarとAndroid-support-v4.jarの両方、またはAndroid-support-v7-appcompat.jarのみを追加する必要があります。
はい、使用したい場合は両方のライブラリの参照を追加する必要があります。
android-support-v13.jarにはappcompatがありますか?
いいえ、これにはFragmentCompatが含まれているため、バージョン13の後にフラグメント機能を追加すると、Apiレベル11とバックワード互換にすることができるため、API 11以降をターゲットとするアプリケーションで追加された機能を使用できます新しいバージョン。
まず、理解する必要があります、Androidサポートライブラリとは?
Androidサポートライブラリは2011年に最初にリリースされました。Android互換性ライブラリとして言うことができます。Androidサポートライブラリは古いリリース用の新しいAPIを提供します。物語は十分ではありません。
これは、バージョン番号の大きいサポートライブラリが以前のライブラリの機能を含むという混乱を招く可能性があります(v7-appcompatはv4のすべての機能を改善し、含むと思われるかもしれません)。ほとんどの場合、これは正しくありませんが、ライブラリ自体にはリビジョン番号があります。たとえば、「AppCompat v21」は実際にはサポートライブラリv7-appcompat、リビジョン21を指します。
Androidサポートライブラリは、単一のライブラリではありませんが、互換性ライブラリとコンポーネントライブラリの2つのグループに大きく分けることができます。
1-Compatibility Librariesは、以前のリリースを実行しているデバイスが新しいAPIを利用できるように、新しいフレームワークリリースからのバックポート機能に焦点を当てています。主要な互換性ライブラリはv4およびv7-appcompatです。
v4ライブラリ:多くの機能が含まれ、その名前が示すように、API 4に戻ります。さらに、Fragmentやローダー(どちらもAPI 11のフレームワークで導入されました)には、ViewPagerやDrawerLayoutなど、フレームワークにまったく存在しない、広く使用されているクラスもいくつかあります。
v7-appcompat:v7-appcompatライブラリは、ActionBar(API 11で導入)およびToolbar(API 21で導入)のサポート実装を提供します。 API7。v4ライブラリが必要ですが、含まれていません。したがって、v7-appcompatに依存する機能もv4に依存します。
2-Component LibrariesAndroid Support Libraryは、開発者がそうでない機能を追加できる、より小さく、よりモジュール式のコンポーネントライブラリも提供します。標準フレームワークの一部。これらの自己完結型ライブラリは、依存関係を気にせずにプロジェクトに簡単に追加または削除できます。考慮すべきいくつかの貴重なコンポーネントライブラリがあります。
v7-recyclerview:大量のデータを効率的に表示およびアニメーション化し、ListViewを置き換えるように設計されたRecyclerViewコンポーネントを提供します
v7-cardview:CardViewコンポーネントを提供し、カードUIデザインパターンを有効にします
v7-gridlayout:GridLayoutクラスを提供します。これにより、UI要素を長方形のグリッドに整理できます。等..
その他のライブラリAndroidサポートライブラリには、あまり使用されないが言及する価値のある他のライブラリもいくつか含まれています。
v8:は、API 8に戻るRenderScript(API 11で導入)のサポートを提供します
v13:フラグメントUIパターンの追加の互換性サポートを提供し、v4ライブラリーをバンドル
v17:TV UIの構築をサポートします
いつAndroidサポートライブラリを使用する必要がありますか?
アプリのminSdkVersionより新しい特定のフレームワーク機能が必要な場合、または標準フレームワークで利用できない特定のフレームワーク機能が必要な場合は、サポートライブラリのいずれかを使用する必要があります。
私はこれを参照します チュートリアル
この回答は、バージョンが26.0.0以上のサポートライブラリのクライアントに関連しています。
注意:サポートライブラリリリース26.0.0(2017年7月)以降、ほとんどのサポートライブラリでサポートされる最小APIレベルはAndroid 4.0(APIレベル14)ほとんどのライブラリパッケージ用。
たとえば、26.0.0以降のサポートライブラリのリリースでは、support-v4およびsupport-v7パッケージは両方とも14の最小APIレベルをサポートします。
詳細については、 サポートライブラリ-バージョンサポートとパッケージ名 を参照してください。