2016-07-24 26 views
1

申し訳ありませんが、これは些細なことだと思うかもしれませんが、Googleが私に教えてくれたのはサポートライブラリの追加方法に関するリンクでした。サポートライブラリの目的は何ですか?たとえば、私はCursorAdapterを使用しなければなりませんでしたが、それを持っていた2つのライブラリ、android.widgetとandroid.support.v4.widgetがありました。両者の違いは何ですか?Androidスタジオのサポートライブラリ

ありがとうございます!

+0

上位APIから下位APIまでの機能をサポートします。何かが各アンドロイドデバイスの普遍的なサポートを好む。 –

答えて

2

ここでは、Understanding Android Support Libraryの記事から抜粋しています。Josh Hight

なぜ?
Androidプラットフォームの大きな利点の1つは、膨大な数のさまざまなデバイスをサポートすることです。あなたの携帯電話、タブレット、スマートウォッチからあなたのテレビ、車、さらにはAndroidまで、Androidは万能モバイルコンピューティングプラットフォームになりたいと考えています。数字の点では、このアプローチは非常に成功しています。この執筆時点では、おそらく2万以上の異なるデバイスがあります。競合するプラットフォームよりもはるかに優れています。

しかし、これらのデバイスをすべてサポートすることで、いくつかの課題が生じます。ユーザーは、ハードウェアとソフトウェアに大きな違いがあるにもかかわらず、すべてのデバイスでアプリケーションが一貫して機能することを期待しています。一方、Androidソフトウェアのアップデートをユーザーに提供する際の独自の課題のため、開発者は常に最新のAndroidリリースにアクセスできるユーザーに依存するとは限りません。実際、開発者は、ほとんどのユーザーが18ヵ月以上のリリースを実行することを期待する必要があります。

Androidチームの助けがなければ、開発者はほとんどのユーザーをサポートするためにかなり醜い妥協を強いられることになります。幸いにも、Androidチームは、古いデバイスやリリースの収容は戦略的に重要であると認識していました。しかし、Android APIが明らかに時間の経過と共に進化する必要があるため、将来のリリースを妨げないようにこれを行うことはアーキテクチャ上の難題になります。最新のリリースを実行するのに十分な新しいデバイスを持つ人だけでなく、大多数のAndroidユーザーが重要な新しいAPIをどのように利用できるようにすることができますか?

答えは、Androidチームが作成した最も重要かつ特殊な設計上の決定の1つです:Androidサポートライブラリ。

いつAndroidサポートライブラリを使用する必要がありますか?
アプリケーションのminSdkVersionよりも新しい、または標準フレームワークでは利用できない特定のフレームワーク機能が必要な場合は、サポートライブラリの1つを使用する必要があります。 しかし、サポートライブラリの一般的な使用は、必ずしも必要ではない場合でも、ベストプラクティスとみなされます。 Support Libraryから


抜粋:

サポートライブラリは、Androidプラットフォーム の古いバージョンで実行されているアプリは プラットフォームの新しいバージョンで利用可能な機能をサポートすることができます。たとえば、Android フレームワークのフレームワーククラスに依存するバージョンが (APIレベル21)未満のアプリでは、 フレームワークのマテリアルデザインがマテリアルデザインをサポートしていないため、 はマテリアルデザインエレメントを表示できません。ただし、アプリケーション にサポートライブラリのappcompat libraryが含まれている場合、 は、APIレベル21で使用可能な多くの機能、つまり材料設計のサポートを含む にアクセスすることができます。その結果、アプリは より幅広い プラットフォーム版でより一貫性のあるエクスペリエンスを提供することができます。

+0

すばらしい答え!また、サポートライブラリを使用するのがベストプラクティスなので、サポートライブラリがあれば、その特定のクラスに対して標準ライブラリよりも常に使用する必要がありますか? – bitscuit

+0

いいえ、サポートライブラリは常に使用する必要はありません。たとえば、API Level> 21のみでAndroidをサポートする必要がある場合は、使用サポートライブラリは必要ありません。新しいAPIレベルの機能にはアクセスできません。 –

+0

また、システムアプリのような気の利いたUIやデフォルトのフレームワークUIを使用しないでアプリを作成する必要がある場合は、サポートライブラリを使用する必要はありません。サポートAPIは、アプリのサイズを約1〜2MB増やす傾向があります。しかし、いくつかの古いAPIは、新しいAPIでは廃止されていることに注意してください。 –

関連する問題