AndroidX 概述

androidx 命名空间包含 Android Jetpack 库。与支持库一样,androidx 命名空间中的库与 Android 平台分开发布,并在 Android 版本之间提供向后兼容性。

AndroidX 是对原始 Android 支持库 的重大改进,后者不再维护。androidx 包通过提供功能奇偶性和新库来完全替换支持库。

此外,AndroidX 还包含以下功能:

  • AndroidX 中的所有包都位于以字符串 androidx 开头的统一命名空间中。支持库包已映射到相应的 androidx.* 包中。有关所有旧类和构建构件到新构件的完整映射,请参阅 包重构 页面。

  • 与支持库不同,androidx 包是单独维护和更新的。androidx 包使用严格的 语义版本控制,从版本 1.0.0 开始。您可以独立更新项目中的 AndroidX 库。

  • 版本 28.0.0 是支持库的最后一个版本。将不再发布 android.support 库。所有新的功能开发都将在 androidx 命名空间中进行。

在您的项目中使用 androidx

请参阅 迁移到 AndroidX,了解如何迁移现有项目。

如果您想在新项目中使用 androidx 命名空间的库,您需要将编译 SDK 设置为 Android 9.0(API 级别 28)或更高版本,并在您的 gradle.properties 文件中将以下两个 Android Gradle 插件标志都设置为 true

  • android.useAndroidX:当此标志设置为 true 时,Android 插件将使用相应的 AndroidX 库,而不是支持库。如果未指定此标志,则默认值为 false
  • android.enableJetifier:当此标志设置为 true 时,Android 插件会通过重写其二进制文件来自动迁移现有第三方库以使用 AndroidX 依赖项。如果未指定此标志,则默认值为 false

API 参考

androidx 命名空间中的所有包和类都可以在 AndroidX 参考部分 中找到。

其他资源

在 Jetpack 主页 上了解有关组件的更多信息。有关从支持库到 androidx 的包重构的更多信息,请参阅有关该主题的 博文