注意: 随着 Android 9.0(API 级别 28)的发布,支持库出现了新版本,称为 AndroidX,它是 Jetpack 的一部分。AndroidX 库包含现有的支持库,还包括最新的 Jetpack 组件。
您可以继续使用支持库。历史工件(版本 27 及更早版本,打包为 android.support.*
)将继续在 Google Maven 上可用。但是,所有新的库开发都将在 AndroidX 库中进行。
我们建议在所有新项目中使用 AndroidX 库。您还应考虑 迁移 现有项目到 AndroidX。
在开发项目中设置 Android 支持库的方式取决于您想要使用的功能以及您想要支持的 Android 平台版本的范围。
本文档将指导您完成下载支持库包以及将库添加到开发环境的步骤。
支持库现在可通过 Google 的 Maven 存储库获得。我们不再支持通过 SDK 管理器下载库,该功能将很快被移除。
选择支持库
在将支持库添加到您的应用程序之前,请确定您要包含的功能以及您要支持的最低 Android 版本。有关不同库提供的功能的更多信息,请参阅 支持库功能.
添加支持库
要使用支持库,您必须在开发环境中修改应用程序项目的类路径依赖项。您必须对要使用的每个支持库执行此过程。
将支持库添加到您的应用程序项目
- 在项目的
settings.gradle
文件中包含 Google 的 Maven 存储库。dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() // If you're using a version of Gradle lower than 4.1, you must // instead use: // // maven { // url 'https://maven.google.com' // } } }
- 对于您要使用支持库的每个模块,在模块的
build.gradle
文件的dependencies
块中添加库。例如,要添加 v4 核心实用程序库,请添加以下内容dependencies { ... implementation "com.android.support:support-core-utils:28.0.0" }
注意: 使用动态依赖项(例如,palette-v7:23.0.+
)会导致意外的版本更新和回归不兼容性。我们建议您明确指定库版本(例如,palette-v7:28.0.0
)。
使用支持库 API
支持库类提供对现有框架 API 的支持,通常与框架类具有相同的名称,但位于 android.support
类包中,或者具有 *Compat
后缀。
注意: 使用支持库中的类时,请确保从适当的包中导入类。例如,应用 ActionBar
类时
android.support.v7.app.ActionBar
在使用支持库时。android.app.ActionBar
仅在针对 API 级别 11 或更高版本进行开发时。
注意: 将支持库包含在您的应用程序项目中后,我们强烈建议您 缩减、混淆和优化您的应用程序 用于发布。除了使用混淆保护您的源代码之外,缩减还会删除您在应用程序中包含的任何库中未使用的类,这将尽可能减小应用程序的下载大小。
Android 开发者 培训课程、指南 和示例中提供了有关使用某些支持库功能的更多指导。有关各个支持库类和方法的更多信息,请参阅 API 参考中的 android.support
包。
清单声明更改
如果您使用支持库将现有应用程序的向后兼容性提高到更早版本的 Android API,请确保更新应用程序的清单。具体来说,您应该将清单中 <uses-sdk>
标签的 android:minSdkVersion
元素更新为新的较低版本号,如下所示
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23" />
清单设置告诉 Google Play 您的应用程序可以安装在 Android 4.0(API 级别 14)及更高版本的设备上。
如果您使用的是 Gradle 构建文件,则构建文件中的 minSdkVersion
设置将覆盖清单设置。
plugins { id 'com.android.application' } android { ... defaultConfig { minSdkVersion 16 ... } ... }
在这种情况下,构建文件设置告诉 Google Play 您的应用程序的默认构建变体可以安装在 Android 4.1(API 级别 16)及更高版本的设备上。有关构建变体的更多信息,请参阅 构建系统概述.
注意: 如果您包含多个支持库,则最低 SDK 版本必须是所有指定库中需要的最高版本。例如,如果您的应用程序同时包含 v14 偏好设置支持库 和 v17 Leanback 库,则您的最低 SDK 版本必须为 17 或更高版本。