android - android.* vs androidx.* 包在android中的实现和使用的区别
问题描述
Google 推出了新的 Android 扩展库 (AndroidX) 的早期预览版,它基本上是根据其文档对现有 android 支持库和架构包的新替代。
android
但是这些和androidx
包之间的实际区别是什么。这两个包的正确用例以及我们如何将现有的 android 包转换为 androidx 包。哪些包/库支持这些转换?
解决方案
AndroidX 基本上是谷歌对其包结构的一次重大重构。他们更改了许多类的位置,以便更清楚哪些类与系统捆绑在一起,哪些不捆绑。
正如他们的文档所述:
我们正在推出一种新的包结构,以便更清楚地了解哪些包与 Android 操作系统捆绑在一起,哪些包与您的应用的 APK 打包在一起。展望未来,
android.*
包层次结构将保留给操作系统附带的 Android 包;其他包将在新的androidx.*
包层次结构中发布。
最高版本 28 的旧支持库将保持原样可用,但新版本的支持库将在 AndroidX 包重构下发布,从版本 1.0.0 开始。
此外,从他们的重构列表中获取:
只有包和 Maven 工件名称受到影响;类、方法和字段名称没有改变。
换句话说,他们只是在组织他们的库。您可以在他们的博客文章中阅读更多相关信息。
推荐阅读
- spring-boot - 没有自动启动 kafkalistener 的模式确认消费者/生产者
- android - Android - 径向图实现
- c++ - 有没有办法将大小传递给节点中的数组(C++ 自定义数据容器)
- php - Laravel没有多次检索相同的ID Eloquent
- swift - 如何将 Firebase 数据从表格视图单元格传递到视图控制器?
- c - 为什么函数会在作为指针传递给它的参数上使用“地址”运算符?
- javascript - Ajax 路径适用于一个数组,但不适用于另一个
- excel - 编写一个 excel 公式或 VBA 宏,返回一周/一个月/过去 60 天/过去 90 天进行的某种类型的调用次数
- ios - 如何正确使用 performSegue 功能视图控制器出现几秒钟?
- c# - 具有多重绑定的 WPF 滑块,其中单个属性被延迟