android.* 与 androidx.* 包在 android 中的实现和使用之间的区别



Google推出了新的Android扩展库(AndroidX(的早期预览版,根据其文档,它基本上是对现有Android支持库和架构包的新替代品。

但是这些androidandroidx包之间的实际区别是什么。这两个软件包的正确用例以及我们如何将现有的 android 软件包转换为 androidx 软件包。哪些包/库支持这些转换?

AndroidX基本上是对Google的软件包结构进行的大型重构。他们更改了许多类的位置,以更清楚地了解哪些类与系统捆绑在一起,哪些类不与系统捆绑在一起。

如他们的文档所述:

我们正在推出一个新的包结构,以更清楚地说明哪个 软件包与 Android 操作系统捆绑在一起,并且 与应用的 APK 一起打包。展望未来,android.*一揽子计划 层次结构将保留给随 操作系统;其他套餐将在新androidx.*中发布 包层次结构。

版本28 之前的旧支持库将保持原样可用,但新版本的支持库将在 AndroidX 包重构下发布,从版本 1.0.0 开始。

此外,从他们的重构列表中获取:

只有包和 Maven 工件名称受到影响; 类、方法、 并且字段名称不会更改。

换句话说,他们只是在组织他们的库。您可以在他们的博客文章中阅读更多相关信息。

AndroidX 是 Android 团队用来开发、测试、打包、版本控制和发布 Jetpack 中的库的开源项目。

AndroidX 是对原始 Android 支持库的重大改进。与支持库一样,AndroidX 与 Android 操作系统分开提供,并在 Android 版本之间提供向后兼容性。AndroidX 通过提供功能奇偶校验和新库完全取代了支持库。此外,AndroidX 还包括以下功能:

AndroidX 中的所有软件包都位于以字符串 androidx 开头的一致命名空间中。支持库软件包已映射到相应的 androidx.* 软件包中。有关所有旧类和生成项目到新类的完整映射,请参阅包重构页。 与支持库不同,AndroidX 软件包是单独维护和更新的。androidx软件包使用严格的语义版本控制,从版本1.0.0开始。您可以独立更新项目中的 AndroidX 库。 所有新的支持库开发都将在 AndroidX 库中进行。这包括维护原始支持库工件和引入新的 Jetpack 组件。

来源 : 安卓X概述

最新更新