Google推出了新的Android扩展库(AndroidX)的早期预览,它基本上是documentation中现有的android支持库和体系结构软件包的新替代品。
但是这些android
和androidx
软件包之间的实际区别是什么?这两个软件包的正确用例,以及如何将现有的android软件包转换为androidx软件包。哪些软件包/库支持这些转换?
答案 0 :(得分:2)
AndroidX基本上是Google在其包装结构上的重大重构。他们更改了许多类的位置,以更清楚地将哪些类与系统捆绑在一起,哪些没有。
如on their docs所述:
我们正在推出新的程序包结构,以使其更清晰 软件包与Android操作系统捆绑在一起, 与您应用的APK打包在一起。展望未来,
android.*
软件包 层次结构将保留给随 操作系统;其他软件包将以新的androidx.*
发行 包层次结构。
版本28之前的旧支持库将保持原样,但新版本的支持库将从版本1.0.0开始的AndroidX软件包重构下发布。
另外,如from their refactoring list所示:
仅软件包和Maven工件名称会受到影响;类,方法 并且字段名称没有更改。
换句话说,他们只是在组织自己的库。您可以了解有关on their blog post的更多信息。
答案 1 :(得分:0)
AndroidX是Android团队用来在Jetpack中开发,测试,打包,版本和发布库的开源项目。
AndroidX是对原始Android支持库的重大改进。与支持库一样,AndroidX与Android OS分开提供,并在Android版本之间提供向后兼容性。 AndroidX通过提供功能奇偶校验和新库来完全替代支持库。此外,AndroidX还包括以下功能:
AndroidX中的所有软件包都以字符串androidx开头,位于一致的命名空间中。支持库包已映射到相应的androidx。*包中。有关所有旧类和构建构件到新构件的完整映射,请参见Package Refactoring页面。 与支持库不同,AndroidX软件包是分别维护和更新的。 androidxpackages从版本1.0.0开始使用严格的语义版本控制。您可以在项目中独立更新AndroidX库。 所有新的支持库开发都将在AndroidX库中进行。这包括维护原始支持库工件和引入新的Jetpack组件。