博客
关于我
Android X 相关汇总
阅读量:477 次
发布时间:2019-03-06

本文共 1534 字,大约阅读时间需要 5 分钟。

AndroidX 迁移指南:理解与实践

随着Android开发的不断进步,Google推出了AndroidX库,标志着Android开发工具链的重大变革。本文将深入探讨AndroidX的意义、变化、影响及迁移方法,帮助开发者顺利适应这一趋势。

说明

官方原文指出,AndroidX的目标是通过将核心API从android.分离到androidx.,使开发者更清晰地识别哪些API是平台内置的,哪些是可选的静态库。这种划分不仅提升了API的可见性,还改变了依赖管理的方式。

简单来说,AndroidX允许开发者按需升级库文件,而不必关注其他库的版本。这与使用开源库类似,出现问题时可以直接与库作者沟通,减少了维护成本。

变化

让我们对比一些常用依赖库的变化:

Old build artifact    AndroidX build artifactcom.android.support:support-compat    androidx.core:core:1.0.0+com.android.support:appcompat-v7androidx.appcompat:appcompat:1.0.0+com.android.support:design    androidx.appcompat:appcompat:1.0.0+com.android.support:designcom.google.android.material:material:1.0.0+com.android.support:multidex    androidx.multidex:multidex:2.0.0+com.android.support:recyclerview-v7androidx.multidex:multidex:2.0.0+com.android.support:viewpager    androidx.legacy:legacy-support-v4:1.0.0+com.android.support:viewpagerandroidx.viewpager:viewpager:1.0.0+com.android.support:support-fragment    androidx.fragment:fragment:1.0.0+

UI组件如ViewPager、SwipeRefreshLayout和CoordinatorLayout被独立管理,这有助于减轻ProGuard和Multidex的负担。

影响

官方说明中提到,28.0.0版本仍支持android.support以迁移期给予时间。未来所有新功能将集中在AndroidX上。对于开发者来说,这并不强制,但长远来看,使用AndroidX有助于代码的简洁性和维护性。

许多开源库如Butterknife和Glide已适配AndroidX,这大大提升了开发体验。

迁移

一键迁移功能在Android Studio 3.2 Canary中推出,支持将旧依赖替换为AndroidX版本。确保Gradle版本至少为3.2.0,compileSdkVersion为28及以上。

新项目启用AndroidX时,需在gradle.properties中添加配置:

android.useAndroidX=trueandroid.enableJetifier=true

如果已有旧项目,可以暂时关闭Jetifier:

android.useAndroidX=trueandroid.enableJetifier=false

通过以上方法,可以顺利完成AndroidX迁移,享受更灵活的开发体验。

转载地址:http://gpdfz.baihongyu.com/

你可能感兴趣的文章
python读取json数据的id_python处理JSON数据
查看>>
Python 中的Duck Typing
查看>>
Python 中的for in 遍历生成字典、添加判断条件if
查看>>
Python 中的Lock与RLock
查看>>
Python 中的range(),arange()函数
查看>>
Python 中的内存管理机制
查看>>
Python 中的函数包装器:模型运行时和调试
查看>>
Python 中的列表理解和 lambda
查看>>
Python 中的多层for in嵌套循环使用
查看>>
Python 中的多线程(01/4)
查看>>
Python 中的多进程(01/2):简介
查看>>
Python 中的多进程(02/2):进程之间的通信)
查看>>
Python 中的字符串、列表、元组和字典数据类型的特点和使用场景
查看>>
Python 中的属性访问器是什么?如何使用 @property 装饰器?
查看>>
Python 中的带宽限制
查看>>
Python 中的机器学习简介:多项式回归
查看>>
python读取grib2数据_用Python加载grib2文件
查看>>
Python 中的注意点_s2
查看>>
Python读取Excel的几种工具包(附Demo)
查看>>
Python 中的生成器是什么?
查看>>