Android Support庫各版本功能介紹
Android 支持庫軟件有多個庫,每個庫均支持特定范圍的 Android 平臺版本和功能。像大家比較熟悉的 v4 、v7、 v13、v14 等。下面將分別介紹下各個庫版本所兼容或帶來的功能有哪些?
v4 支持庫
v4庫旨在與 Android 2.3(API 級別 9)及更高版本搭配使用。與其他支持庫相比,它們包含的 API 集合***,包括對應(yīng)用組件、用戶界面功能、輔助功能、數(shù)據(jù)處理、網(wǎng)絡(luò)連接以及編程實用工具的支持。
注:在支持庫修訂版 24.2.0 之前,存在一個 v4 支持庫。為了提高效率,此庫拆分成多個模塊。出于向后兼容的考慮,如果您在 Gradle 腳本中列出了 support-v4,您的 APK 將包含所有的 v4 模塊。不過,要減少 APK 大小,我們建議僅列出應(yīng)用需要的特定模塊。
v4 compat 庫
此為眾多框架 API 提供兼容性包裝器,例如 Context.obtainDrawable() 和 View.performAccessibilityAction()
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-compat:24.2.0
v4 core-utils 庫
提供大量實用程序類,例如 AsyncTaskLoader 和 PermissionChecker。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-core-utils:24.2.0
v4 core-ui 庫
實現(xiàn)各種 UI 相關(guān)組件,例如 ViewPager、NestedScrollView 和 ExploreByTouchHelper。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-core-ui:24.2.0
v4 media-compat 庫
向后移植部分媒體框架,包括 MediaBrowser 和 MediaSession。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-media-compat:24.2.0
v4 fragment 庫
添加對使用片段封裝用戶界面和功能的支持,從而使應(yīng)用能夠提供可以在大屏幕設(shè)備與小屏幕設(shè)備之間進行調(diào)節(jié)的布局。此模塊依賴于 compat、core-utils、core-ui 和 media-compat。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-fragment:24.2.0
Dalvik 可執(zhí)行文件分包支持庫
此庫可以為使用多個 Dalvik Executable (DEX) 文件開發(fā)應(yīng)用提供支持。引用超過 65536 個方法的應(yīng)用須使用 Dalvik 可執(zhí)行文件分包配置。如需了解有關(guān)使用 Dalvik 可執(zhí)行文件分包的詳細(xì)信息,請參閱使用超過 6.4 萬種方法開發(fā)應(yīng)用。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:multidex:1.0.0
v7 支持庫
一些庫旨在與 Android 2.3(API 級別 9)及更高版本搭配使用。這些庫提供了特定的功能集,并且可以單獨添加到應(yīng)用中,與其他庫互不影響。
v7 appcompat 庫
此庫添加了對操作欄用戶界面設(shè)計模式的支持。此庫包含對 Material Design 用戶界面實現(xiàn)的支持。
注:此庫依賴于 v4 支持庫。
下面是 v7 appcompat 庫中包含的一些關(guān)鍵類:
- ActionBar - 提供操作欄用戶界面模式的實現(xiàn)。如需了解有關(guān)使用操作欄的詳細(xì)信息,請參閱操作欄開發(fā)者指南。
- AppCompatActivity - 添加一個應(yīng)用 Activity 類,此類可作為使用支持庫操作欄實現(xiàn)的 Activity 的基礎(chǔ)類。
- AppCompatDialog - 添加一個對話框類,此類可作為 AppCompat 主題對話框的基礎(chǔ)類。
- ShareActionProvider - 包含對可以添加到操作欄中的標(biāo)準(zhǔn)化分享操作(例如電子郵件或發(fā)帖至社交應(yīng)用)的支持。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:appcompat-v7:24.2.0
v7 cardview 庫
此庫添加了對 CardView 小部件的支持,讓您能夠在卡片內(nèi)顯示信息,從而使應(yīng)用具備一致的外觀。這些卡片對 Material Design 實現(xiàn)非常有用,并在電視應(yīng)用布局中廣為使用。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:cardview-v7:24.2.0
v7 gridlayout 庫
下載 Android 支持庫后,此庫可以添加對 GridLayout 類的支持,讓您能夠使用網(wǎng)狀方格安排用戶界面元素。如需了解有關(guān) v7 gridlayout 庫 API 的詳細(xì)信息,請參閱 API 參考中的 android.support.v7.widget 軟件包。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:gridlayout-v7:24.2.0
v7 mediarouter 庫
此庫可以提供 MediaRouter、MediaRouteProvider 和支持 Google Cast 的相關(guān)媒體類。
一般而言,利用 v7 mediarouter 庫中的 API,您可以控制當(dāng)前設(shè)備到外部屏幕、揚聲器和其他目標(biāo)設(shè)備的媒體渠道和流的路由。此庫包含的 API 可以用于發(fā)布應(yīng)用特定的媒體路由提供程序、發(fā)現(xiàn)和選擇目標(biāo)設(shè)備,以及檢查媒體狀態(tài),等等。如需了解有關(guān) v7 mediarouter 庫 API 的詳細(xì)信息,請參閱 API 參考中的 android.support.v7.media 軟件包。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:mediarouter-v7:24.2.0
支持庫 r18 中引入的 v7 mediarouter 庫 API 在后續(xù)版本的支持庫中可能會發(fā)生更改。目前,我們建議僅使用與 Google Cast 有關(guān)的庫。
v7 palette 庫
v7 palette 支持庫包含 Palette 類,此類讓您可以從圖像中抽取突出顏色。例如,音樂應(yīng)用可以使用 Palette 對象從專輯封面抽取主要顏色,然后使用這些顏色創(chuàng)建一個色彩協(xié)調(diào)的歌曲標(biāo)題卡。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:palette-v7:24.2.0
v7 recyclerview 庫
recyclerview 庫添加了 RecyclerView 類。此類能夠為 RecyclerView 小部件提供支持,RecyclerView 是一種通過提供有限的數(shù)據(jù)項窗口有效顯示大數(shù)據(jù)集的視圖。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:recyclerview-v7:24.2.0
####v7 Preference 支持庫
***項軟件包提供的 API 支持添加 preference 對象(例如 CheckBoxPreference 和 ListPreference),方便用戶修改 UI 設(shè)置。
v7 Preference 庫添加了對接口(例如 Preference.OnPreferenceChangeListener 和 Preference.OnPreferenceClickListener)以及類(例如 CheckBoxPreference 和 ListPreference)的支持。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:preference-v7:24.2.0
v8 支持庫
此庫旨在與 Android 2.3(API 級別 9)及更高版本搭配使用。此庫提供了特定的功能集,并且可以單獨添加到應(yīng)用中,與其他庫互不影響。
v8 renderscript 庫
此庫旨在與 Android 2.3(API 級別 9)及更高版本搭配使用。它添加了對 RenderScript 計算框架的支持。android.support.v8.renderscript 軟件包中包含這些 API。請注意,在應(yīng)用中添加這些 API 的步驟與添加其他支持庫 API 迥然不同。如需了解有關(guān)在應(yīng)用中使用這些 API 的詳細(xì)信息,請參閱 RenderScript 開發(fā)者指南。
注:Android Studio 和 Gradle 構(gòu)建支持使用帶支持庫的 RenderScript。renderscript 庫位于 build-tools/$VERSION/renderscript/ 文件夾中。
以下示例顯示了此庫的 Gradle 構(gòu)建腳本屬性:
- defaultConfig {
- renderscriptTargetApi 18
- renderscriptSupportModeEnabled true
- }
v13 支持庫
此庫旨在用于 Android 3.2(API 級別 13)及更高版本。它添加了對帶有 (FragmentCompat) 類和其他片段支持類的 Fragment 用戶界面模式的支持。如需了解有關(guān)片段的詳細(xì)信息,請參閱片段開發(fā)者指南。如需了解有關(guān) v13 支持庫 API 的詳細(xì)信息,請參閱 API 參考中的 android.support.v13 軟件包。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-v13:24.2.0
v14 Preference 支持庫
android.support.v14.preference 軟件包提供的 API 添加了對***項接口(例如 PreferenceFragment.OnPreferenceStartFragmentCallback 和 PreferenceFragment.OnPreferenceStartScreenCallback)以及類(例如 MultiSelectListPreference 和 PreferenceFragment)的支持。如需了解有關(guān) v14 Preference 支持庫 API 的詳細(xì)信息,請參閱 API 參考中的***項軟件包。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:preference-v14:24.2.0
適用于電視的 v17 Preference 支持庫
android.support.v17.preference 軟件包提供的 API 可以在電視設(shè)備上提供***項接口,包括對 LeanbackListPreferenceDialogFragment.ViewHolder.OnItemClickListener 接口和類的支持,例如 BaseLeanbackPreferenceFragment 和 LeanbackPreferenceFragment。如需了解有關(guān) v17 Preference 支持庫 API 的詳細(xì)信息,請參閱 API 參考中的***項軟件包。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:preference-leanback-v17:24.2.0
v17 Leanback 庫
android.support.v17.leanback 軟件包提供的 API 支持在電視設(shè)備上構(gòu)建用戶界面。它為電視應(yīng)用提供了一些重要的小部件。一些值得注意的類包括:
- BrowseFragment - 一種用于創(chuàng)建主要布局的片段,主要布局用于瀏覽類別和媒體項目。
- DetailsFragment - 用于 Leanback 細(xì)節(jié)屏幕的包裝器片段。
- PlaybackOverlayFragment - 用于顯示播放控件及相關(guān)內(nèi)容的 DetailsFragment 子類。
- SearchFragment - 用于處理搜索的片段。片段可以接收用戶的搜索請求并將其傳遞給應(yīng)用提供的 SearchResultProvider。SearchResultProvider 可以將搜索結(jié)果返回給 SearchFragment,后者會將結(jié)果渲染到 RowsFragment 中。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:leanback-v17:24.2.0
注解支持庫
注解軟件包提供的 API 支持向應(yīng)用中添加注解元數(shù)據(jù)。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:support-annotations:24.2.0
設(shè)計支持庫
設(shè)計軟件包提供的 API 支持向應(yīng)用中添加 Material Design 組件和模式。
設(shè)計支持庫添加了對應(yīng)用開發(fā)者依賴的各種 Material Design 組件和模式的支持,例如抽屜式導(dǎo)航欄、浮動操作按鈕 (FAB)、快捷信息欄和標(biāo)簽頁。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:design:24.2.0
自定義標(biāo)簽頁支持庫
自定義標(biāo)簽頁軟件包提供的 API 支持向應(yīng)用中添加自定義標(biāo)簽頁并對其進行管理。
自定義標(biāo)簽頁支持庫添加了對自定義標(biāo)簽頁服務(wù)和自定義標(biāo)簽頁回調(diào)等各種類的支持。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:customtabs:24.2.0
百分比支持庫
百分比軟件包提供的 API 支持向應(yīng)用中添加基于百分比的尺寸并對其進行管理。
百分比支持庫添加了對 PercentLayoutHelper.PercentLayoutParams 接口和各種類的支持,例如 PercentFrameLayout 和 PercentRelativeLayout。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:percent:24.2.0
適用于電視的應(yīng)用建議支持庫
應(yīng)用建議軟件包提供的 API 支持向電視設(shè)備上運行的應(yīng)用中添加內(nèi)容建議。
應(yīng)用庫添加了對注解(例如 ContentRecommendation.ContentMaturity 和各種類(例如 ContentRecommendation 和 RecommendationExtender)的支持。
此庫的 Gradle 構(gòu)建腳本依賴關(guān)系標(biāo)識符如下所示:
- com.android.support:recommendation:24.2.0
看完上面的介紹,是不是對 Google 這些 Support 庫 有了更全面的了解以及各版本之間的區(qū)別。如果希望就分享出去讓更多的人知道吧。