AndroidX
命名空间中的工件包含 Android Jetpack 库。与支持库一样,androidx
命名空间中的库与 Android 平台分开提供,并向后兼容各个 Android 版本。
AndroidX 是对原始 Android 支持库的重大改进,后者现已不再维护。androidx
软件包完全取代了支持库,不仅提供同等的功能,而且提供了新的库。
此外,AndroidX 还包括以下功能:
AndroidX 中的所有软件包都使用一致的命名空间,以字符串
androidx
开头。支持库软件包已映射到对应的androidx.*
软件包。有关所有旧类到新类以及旧编译工件到新编译工件的完整映射,请参阅软件包重构页面。与支持库不同,
androidx
软件包会单独维护和更新。从版本 1.0.0 开始,androidx
软件包使用严格的语义版本控制。您可以单独更新项目中的 AndroidX 库。版本 28.0.0 是支持库的最后一个版本。我们将不再发布
android.support
库版本。所有新功能都将在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
。