支持库软件包

注意:随着 Support Library 28.0.0 的发布,android.support 打包的 库已废弃,取而代之的是具有单独版本编号的 Jetpack 库打包为 androidx。初始的 1.0.0 Jetpack 库的版本与支持库 28.0.0 等效,并且提供 迁移到新 androidx 的起点 。

使用 android.support 打包的现有库将继续正常运行;然而, 不会收到 28.0.0 之后的任何更新,并且与新的 Jetpack 库不兼容。 以往的工件(这里指的是打包为 android.support 的 27 版及更早版本)在 Google Maven 中仍然可用。所有新制品都将打包为 androidx 并需要从 android.support 进行迁移 发送至 androidx

我们建议在所有新项目中使用 androidx 库。您还应该 可以考虑迁移现有项目,以确保 继续接收问题修复和库的其他改进。

Android 支持库包含多个可以添加的库软件包 。其中每个库均支持一系列特定的 Android 平台版本和功能。

要使用以下任意库,您必须将库文件下载到 Android SDK 安装。请按照支持库设置中有关下载支持库的说明完成此步骤。您必须采取其他措施以在应用中包含特定的支持库。有关如何在应用中添加库的重要信息,请参阅下文各个库部分的结尾。

注意:所有支持的最低 SDK 版本 库软件包的最低 API 级别为 14。某些软件包需要更高的 API (如下所述)。

v4 支持库

与其他库相比,这些库包含的 API 集合最大,包括对应用组件、界面功能、无障碍功能、数据处理、网络连接以及编程实用工具的支持。

有关 v4 支持库,请参阅 API 参考文档中的 android.support.v4 软件包。

注意:在支持库修订版 24.2.0 之前, 单一 v4 支持库。为了提高效率,此库拆分成多个模块。为了实现向后兼容性,如果您在 Gradle 脚本中列出 support-v4,则应用将包含所有 v4 模块。不过,为了缩减应用大小,我们建议您只列出应用需要的特定模块。

v4 compat 库

为多种框架 API 提供兼容性封装容器,例如 Context.obtainDrawable()View.performAccessibilityAction()

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:support-compat:28.0.0

v4 core-utils 库

提供多种实用工具类,例如 AsyncTaskLoaderPermissionChecker

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:support-core-utils:28.0.0

v4 core-ui 库

实现各种与界面相关的组件,例如 ViewPagerNestedScrollViewExploreByTouchHelper

此库的 Gradle 构建脚本依赖项标识符如下所示:

com.android.support:support-core-ui:28.0.0

v4 media-compat 库

媒体框架的向后移植部分, 包括MediaBrowserMediaSession

此库的 Gradle 构建脚本依赖项标识符如下所示:

com.android.support:support-media-compat:28.0.0

v4 fragment 库

添加了对封装界面和功能的支持, fragment、 使应用提供的布局能够在小屏幕和主屏幕 大屏设备。此模块依赖于 compatcore-utilscore-uimedia-compat

注意v13 支持库 提供了 FragmentCompat 类。v4 Fragment 类是一个独立的类,它提供了在之后的平台版本中添加的问题修复,而 v13 FragmentCompat 类为 Fragment 类的框架实现提供了兼容性 shim。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:support-fragment:28.0.0

Multidex 支持库

此库通过多个 Dalvik 可执行文件 (DEX) 为构建应用提供支持。如果应用引用超过 65536 种方法,则必须使用多 dex 配置。如需详细了解如何使用多 dex,请参阅以超过 64000 种方法编译应用

此库的 Gradle 构建脚本依赖项标识符如下所示:

com.android.support:multidex:1.0.0

v7 支持库

这些库提供特定的功能集,并且可以包含在您的应用中 相互独立。

v7 appcompat 库 Android Jetpack 的一部分。

注意:appcompat 库已经迁移到 AndroidX 库,后者是一个 Android Jetpack 组件。您可以在 Sunflower 演示应用中查看它的使用情况。

此库增加了对 操作栏用户 界面设计 模式。此库包含对 Material Design 界面实现的支持。

注意:此库依赖于 v4 支持库。

以下是 v7 appcompat 库中包含的几个关键类:

  • ActionBar - 提供操作栏界面模式的实现。有关 有关如何使用操作栏的信息,请参阅 操作栏开发者指南。
  • AppCompatActivity - 添加了应用 activity 类,此类可用作使用支持库操作栏实现的 activity 的基类。
  • AppCompatDialog - 添加了对话框类,此类可用作 AppCompat 主题对话框的基类。
  • ShareActionProvider - 增加了对可包含在操作栏中的标准化分享操作(例如发送电子邮件或发布到社交应用)的支持。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:appcompat-v7:28.0.0

v7 cardview 库

此库添加了对 CardView 的支持 微件,可让您在具有一致外观的卡片内显示信息 。这些卡片适用于 实现,并且广泛用于 TV 应用的布局。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:cardview-v7:28.0.0

v7 gridlayout 库

下载 Android 支持库后,此库会增加对 GridLayout 类的支持,这样可以让您使用矩形单元格网格整理界面元素。如需详细了解 v7 gridlayout 库 API,请参阅 API 参考文档中的 android.support.v7.widget 软件包。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:gridlayout-v7:28.0.0

v7 mediarouter 库

此库提供 MediaRouterMediaRouteProvider 和相关媒体类, 支持 Google Cast

一般来说,v7 mediarouter 库中的 API 提供一种方法来控制从当前设备到外部屏幕、扬声器和其他目标设备的媒体渠道和数据流的路由。此库包含用于以下方面的 API:发布特定于应用的媒体路由提供程序,发现和选择目标设备,以及检查媒体状态等。如需详细了解 v7 mediarouter 库 API 的详细信息,请参阅 API 中的 android.support.v7.media 软件包 参考。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:mediarouter-v7:28.0.0

支持库 r18 中引入的 v7 mediarouter 库 API 可能会在之后的支持库修订版中发生更改。目前,我们建议仅在与 Google Cast 相关的情况下使用此库。

v7 palette 库

v7 Palette 支持库包含 Palette 类,可让您提取 图片中突出显示的颜色。例如,音乐应用可以使用 Palette 对象,用于提取主要颜色 从专辑封面上挑选的图片,然后用这些颜色来创作一首协调歌曲 片头字幕。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:palette-v7:28.0.0

v7 recyclerview 库

recyclerview 库添加了 RecyclerView 类。此类为 RecyclerView 微件,这是一种通过提供 限制窗口的数据项。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:recyclerview-v7:28.0.0

v7 Preference 支持库

Preference 软件包提供用于支持添加偏好设置对象的 API(例如 CheckBoxPreferenceListPreference),以便用户修改界面设置。

v7 Preference 库增加了对界面(例如 Preference.OnPreferenceChangeListenerPreference.OnPreferenceClickListener)和类(例如 CheckBoxPreferenceListPreference)的支持。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:preference-v7:28.0.0

v8 支持库

此库提供特定的功能集,并且可以包含在您的应用中 与其他库相互独立

v8 renderscript 库

此库增加了对 RenderScript 计算框架的支持。这些 API 包含在 android.support.v8.renderscript 软件包中。您 请注意,在应用中添加这些 API 的步骤 与其他支持库 API 不同。如需详细了解如何在应用中使用这些 API,请参阅 RenderScript 开发者指南。

注意:Android 支持将 RenderScript 与支持库搭配使用 基于 Studio 和 Gradle 的 build。通过 renderscript 库位于 build-tools/$VERSION/renderscript/ 文件夹中。

以下示例展示了此库的 Gradle 编译脚本属性:

defaultConfig {
    renderscriptTargetApi 18
    renderscriptSupportModeEnabled true
}

v13 支持库

此库增加了对 Fragment 界面模式 具有 (FragmentCompat) 类和其他 fragment 支持 类。如需详细了解 fragment,请参阅 fragment 开发者指南。如需详细了解 v13 支持库 API,请参阅 API 参考文档中的 android.support.v13 软件包。

注意v4 fragment 库 提供了 Fragment 类。v4 Fragment 类是一个独立的类, 提供了在以后平台版本中增加的错误修复,而 v13 FragmentCompat 类提供 的框架实现的兼容性填充码 Fragment 类。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:support-v13:28.0.0

v14 Preference 支持库

android.support.v14.preference 软件包提供了用于添加支持的 API 偏好接口,例如 PreferenceFragment.OnPreferenceStartFragmentCallbackPreferenceFragment.OnPreferenceStartScreenCallback, 以及一些类, MultiSelectListPreferencePreferenceFragment。如需详细了解 v14 Preference 支持库 API,请参阅 API 参考文档中的 preference 软件包。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:preference-v14:28.0.0

适用于电视的 v17 Preference 支持库

android.support.v17.preference 软件包提供用于在电视设备上提供偏好设置界面的 API,包括对 LeanbackListPreferenceDialogFragment.ViewHolder.OnItemClickListener 接口和类的支持,例如 BaseLeanbackPreferenceFragmentLeanbackPreferenceFragment。如需详细了解 有关 v17 Preference 支持库 API 的信息,请参阅 偏好设置 API 参考中的软件包。

此软件包需要 API 级别 17 或更高级别。此库的 Gradle 编译脚本依赖项标识符如下所示:

 com.android.support:preference-leanback-v17:28.0.0 

v17 Leanback 库

android.support.v17.leanback 软件包提供的 API 来支持 构建界面 。它提供了一些适用于电视应用的重要微件。一些重要的类包括:

此软件包需要 API 级别 17 或更高级别。Gradle 构建脚本 此库的依赖项标识符如下所示:

com.android.support:leanback-v17:28.0.0

Vector Drawable 库

提供对静态矢量图形的支持。

此库的 Gradle 构建脚本依赖项标识符为 如下:

com.android.support:support-vector-drawable:28.0.0

Animated Vector Drawable 库

提供对动画矢量图形的支持。

此库的 Gradle 构建脚本依赖项标识符如下所示:

com.android.support:animated-vector-drawable:28.0.0

Annotations 支持库

注解 软件包提供用于支持向应用添加注解元数据的 API。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:support-annotations:28.0.0

Design 支持库

通过 Design 软件包 提供支持向应用添加 Material Design 组件和模式的 API。

Design 支持库增加了对各种 Material Design 组件和模式的支持,以便应用开发者在此基础上进行构建,例如抽屉式导航栏、悬浮操作按钮 (FAB)、信息提示控件和标签页

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:design:28.0.0

Custom Tabs 支持库

通过 自定义标签页 软件包提供的 API 支持在应用中添加和管理自定义标签页。

Custom Tabs 支持库增加了对各种类的支持,例如自定义标签页服务自定义标签页回调

此软件包需要 API 级别 15 或更高级别。此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:customtabs:28.0.0

Percent 支持库

通过 百分比 软件包提供的 API 支持添加和管理基于百分比的 尺寸

注意:从 26.0.0 版本开始,Percent 支持库已被弃用。此模块的客户端应迁移到新的 ConstraintLayout 微件,后者作为 SDK 管理器中的单独工件提供。

Percent 支持库增加了对 PercentLayoutHelper.PercentLayoutParams 接口和各种类的支持,例如 PercentFrameLayoutPercentRelativeLayout

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:percent:28.0.0

ExifInterface 支持库

Exif 标记将屏幕方向、日期和时间、相机信息和位置等信息直接存储在 JPEG 文件或 RAW 文件中。ExifInterface 类取消了对从 JPEG 和原始(DNG、CR2、NEF、NRW、ARW、RW2、ORF、PEF、SRW 和 RAF)格式的文件中读取 Exif 信息以及在 JPEG 图片文件上设置 Exif 信息的支持。

此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:exifinterface:28.0.0

适用于电视的 App Recommendation 支持库

App Recommendation 软件包提供用于支持在电视设备上运行的应用中添加内容推荐的 API。

App 库增加了对注解(例如 ContentRecommendation.ContentMaturity)和各种类(例如 ContentRecommendationRecommendationExtender)的支持。

此软件包需要 API 级别 21 或更高级别。此库的 Gradle 编译脚本依赖项标识符如下所示:

com.android.support:recommendation:28.0.0

Wear 界面库

此库包含用于为 Wear 应用构建界面的 API。 这些 API 在 android.support.wear.widget 软件包中提供,可替代 Wearable 支持库中的相应 API。

如需了解详情,请参阅 <ph type="x-smartling-placeholder"></ph> 使用 Wear 界面库

此库的 Gradle 构建脚本依赖项标识符如下所示:

com.android.support:wear:28.0.0