\

看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!

\

\\

新的Android扩展库(AndroidX)取代了使用七年之久的Android支持库,旨在简化相关工作,并为该库未来的发展打下坚实的基础。

\\

Android支持库允许开发人员在旧版本的Android上支持新的OS特性,或者回退到等效的功能,是一种可以部分地减轻Android生态系统碎片化的有效方式。按照谷歌的说法:

\\

\

Android支持库应用非常广泛;大多数Android应用都使用了Android支持库。

\

\\

然而,在其自然发展的过程中,出现了多个让许多开发人员为之困惑的选项。其中一个例子是存在以“v7”命名的组件和包,这是该库需要的原始Android SDK级别,目前需要的最小版本是14(Android 4.0)。

\\

AndroidX的第一项改进旨在帮助开发人员区分哪些包属于OS,哪些是在应用程序包工具(APK)中。通常,APK中的(非捆绑式)库可以很好地确保单个API可以供跨不同Android版本的库使用。在使用AndroidX时,所有非捆绑式的库都属于androidx.*命名空间,包括所有的支持库和架构组件。这有助于开发人员搞清楚,哪些依赖应该包含在APK中。

\\

此外,AndroidX重新设计了包结构,旨在鼓励库的小型化,支持库和架构组件包的名字也都简化了。点击这里,可以查看所有的重构变更。

\\

最后需要指出的是,AndroidX使用了严格的语义版本,用于表明何时保证二进制兼容性,何时可能破坏。例如,如果依赖AndroidX的1.5.0版本,那么也可以使用1.7.0版本,但不能使用2.0.0。

\\

AndroidX带来的变化无疑会影响现有的代码库,这就需要代码重构和依赖转化。为了帮助开发人员迁移他们的代码库,Android Studio Canary 14包含了一个重构特性,以便尽可能地简化这个过程。

\\

就品质而言,AndroidX目前仍被认为是处于Alpha阶段,有些变更会破坏兼容性。而且,有些已知的问题,因此,谷歌不建议在生产项目中使用它。

\\

查看英文原文:Google Overhauls the Android Support Library into AndroidX

谷歌使用AndroidX代替Android支持库相关推荐

  1. androidx和android的区别,【译】使用AndroidX代替Android支持库

    今天,我们发布一个新的Android扩展库(AndroidX)的早期预览版,这表示了支持库的一个新的时代.请为这些变化提出你们的反馈.既然这是一个早期的预览版本,我们并不建议放在生产环境尝试这些功能, ...

  2. 记录一个AndroidX和Android support库不能共存的坑

    今天用到第三方库的时候一直报异常More than one file was found with OS independent path 'META-INF/androidx.legacy_lega ...

  3. 【Xamarin.Android】掌握android支持库

    Android支持库是每个Android应用程序中必不可少的一部分,你会发现它们无处不在.支持库为开发人员提供了将Android的最新和最强大功能添加到应用程序的能力,同时保持与旧版本Android的 ...

  4. Android支持库

    # 支持库 支持库命名规范 引入支持库时的命名规范为:"group:name:version" 例如: implementation 'com.android.support:ap ...

  5. android xmlpullparser 编译出错,将Android支持库更新为23.2.0导致错误:XmlPullParserException...

    我尝试将支持库更新到23.2.0并遇到此错误: Exception while inflating org.xmlpull.v1.XmlPullParserException: Binary XML ...

  6. Android支持库CollapsingToolbarLayout

    介绍 CollapsingToolbarLayout 用于美化 Toolbar 的运行效果, 它是由Design Support 库 提 供 的.CollapsingToolbarLayout 被设计 ...

  7. android支持平台,Android 平台功能

    Android 平台功能Android Platform Features 12/11/2019 本文内容 开发 Xamarin.Forms 适用于 Android 的应用程序需要 Visual St ...

  8. android androidx版本,Android AndroidX 简介与迁移

    AndroidX 简介 AndroidX 是 Android 团队用于在 Jetpack 中开发,测试,打包,版本和发布库的开源项目 . AndroidX 是对原始 Android Support L ...

  9. Android开源库项目集锦

    一.兼容类库 ActionBarSherlock : Action Bar是Android 3.0后才开始支持的,ActionBarSherlock是让Action Bar功能支持2.X后的所有平台, ...

最新文章

  1. python listen_python socket编程中listen和accept的区别
  2. C++:录入班级数学成绩,计算最大值、平均值、不及格人数
  3. java回调函数_PHP回调函数及匿名函数概念与用法详解
  4. 初识Mysql(part1)--我需要知道的基本概念
  5. 方舟服务器制作修改,ARK方舟:生存进化服务器禁止物品制造的修改方法
  6. Microsoft Azure Remoteapp使用自定义镜像创建桌面服务
  7. 我见过太多PhD,精神崩溃、心态失衡、身体垮掉、一事无成
  8. c 提示错误expected) before ; token_NLP.TM[33] | 纠错:pycorrector的错误检测
  9. P.Laguna/AUTOMATIC DETECTION OF WAVE BOUNDARIES IN MULTILEAD ECG SIGNALS VALIDATION WITH THE CSE DB
  10. Transformer提效之路干货笔记——一文梳理各种魔改版本Transformer
  11. MySQL错误号码1862:your password has expired
  12. Jensen不等式证明
  13. 收集的Word2007技巧大全
  14. uniapp 标签打印 笔记
  15. cups ipp oracle,Linux打印系统CUPS原理分析
  16. 2019安徽省程序设计竞赛 D自驾游 题解
  17. 联发科MT6797/Helio X20软件用户手册资料介绍
  18. Hive自定义函数报错10014 :No matching method for class
  19. recon-ng无法更新、查询、安装模块
  20. 华章IT图书书讯(2011年第6期)

热门文章

  1. ARMv8 A64 汇编中立即数范围问题分析
  2. 2013年全国硕士研究生入学统一考试英语(一)和(二)考试大纲新增的60个词汇详解
  3. 有什么好用的图片编辑软件?这个编辑软件很好用
  4. Vue3+TS 中使用Provide/Inject 的例子
  5. JUnitException:Intellij unit test无法正常运行
  6. 组态王bitset用法_组态王使用常遇到问题
  7. 掏心掏肺,教你如何把苍白的人生写成老板都心动的简历
  8. SATA与PCI-E速度对比
  9. [Course] Advanced Computer Programming, Homework, week 2
  10. 怎么复制cmd显示的内容?怎么把外面的东西复制到cmd里面?