博客
关于我
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/

你可能感兴趣的文章
OSS 访问图片资源报“No ‘Access-Control-Allow-Origin‘”的错误
查看>>
oss报UnknownHost,k8s设置hostAliases参数
查看>>
OS模块
查看>>
OS第2章 —— 进程
查看>>
OS第3章 —— 进程调度和死锁
查看>>
OS第5章
查看>>
OTA测试
查看>>
Outlook 2010 Inside Out
查看>>
overlay(VLAN,VxLAN)、underlay网络、大二层概述
查看>>
OWASP漏洞原理<最基础的数据库 第二课>
查看>>
OWL本体语言
查看>>
P with Spacy:自定义文本分类管道
查看>>
P1035 I need help
查看>>
P1364 医院设置
查看>>
P2260 [清华集训2012]模积和
查看>>
SpringBoot中集成influxdb-java实现连接并操作Windows上安装配置的influxDB(时序数据库)
查看>>
SpringBoot中集成eclipse.paho.client.mqttv3实现mqtt客户端并支持断线重连、线程池高并发改造、存储入库mqsql和redis示例业务流程,附资源下载
查看>>
Padding
查看>>
paddlehub安装及对口罩检测
查看>>
SpringBoot中集成Actuator实现监控系统运行状态
查看>>