AndroidX 概述

The androidx namespace comprises the Android Jetpack libraries. Like the Support Library, libraries in the androidx namespace ship separately from the Android platform and provide backward compatibility across Android releases.

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 的包重构的更多信息,请参阅 有关该主题的博文