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 level 28) 或更高版本,并在您的gradle.properties 文件中将以下两个 Android Gradle 插件标志都设置为 true

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

API 参考

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

其他资源

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