androidx
命名空间中的工件包含 Android Jetpack 库。与Support Library一样,androidx
命名空间中的库与 Android 平台分开提供,并向后兼容各个 Android 版本。
AndroidX 对原始 Android Support Library 进行了重大改进,后者现在已不再维护。androidx
软件包完全取代了Support Library,不仅提供与支持库同等的功能,而且还提供了新的库。
此外,AndroidX 还包括以下功能:
-
AndroidX 中的所有软件包都使用一致的命名空间,以字符串
androidx
开头。支持库软件包已映射到对应的androidx.*
软件包。如需获取所有旧类到新类以及旧构建工件到新构建工件的完整映射,请参阅软件包重构页面。 -
与支持库(Support Library)不同,
androidx
软件包会单独维护和更新。从版本 1.0.0 开始,androidx
软件包使用严格的语义版本控制。您可以单独更新项目中的各个 AndroidX 库。 -
版本 28.0.0 是支持库的最后一个版本。我们将不再发布
android.support
库版本。 所有新功能都将在androidx
命名空间中开发。
androidx
在项目中使用库
请参阅迁移到 AndroidX以了解如何迁移现有项目。
如果您想在新项目中使用androidx
-namespaced 库,您需要将compile SDK 设置为 Android 9.0(API 级别 28)或更高版本,并将以下两个 Android Gradle 插件标志设置true在
您的 gradle.properties
文件。
android.useAndroidX
:当此标志设置为 时true
,Android 插件使用适当的 AndroidX 库而不是支持库。false
如果未指定,则该标志为 默认值。android.enableJetifier
:当此标志设置为 时true
,Android 插件会通过重写其二进制文件自动迁移现有的第三方库以使用 AndroidX 依赖项。false
如果未指定,则该标志为默认值。