com.android.support:support-v4:28.0.0版本不兼容问题及AndroidX迁移咨询
AndroidX迁移解决版本不兼容问题操作指南
首先附上问题对应的报错信息:
系统提示信息:“Version 28(面向Android Pie及更低版本)是传统支持库的最后一个版本,因此我们建议你在使用Android Q及更高版本时迁移到AndroidX库。IDE可帮助完成相关操作:Refactor > Migrate to AndroidX…”
第一步:迁移前预处理
- 将当前项目所有未提交的修改提交到版本管理工具,避免迁移失败无法回退
- 把项目中所有
com.android.support系列依赖统一升级到28.0.0版本,保证依赖版本一致 - 打开项目根目录的
gradle.properties文件,添加两行配置:
android.useAndroidX=true android.enableJetifier=true
其中android.useAndroidX=true表示启用AndroidX依赖体系,android.enableJetifier=true会自动将第三方依赖包中的旧支持库引用替换为AndroidX对应引用,避免第三方库兼容问题。
第二步:执行IDE自动迁移
打开Android Studio顶部菜单栏,依次点击Refactor > Migrate to AndroidX,在弹出的确认弹窗中点击「Migrate」,等待IDE扫描全项目文件后,在底部Refactoring Preview面板核对所有待修改项,点击「Do Refactor」执行自动替换。
自动迁移会默认替换代码、布局文件、配置文件中所有android.support开头的包引用为对应的AndroidX包。
第三步:手动修复残留报错
自动迁移完成后如果还有报错,按以下顺序排查:
- 检查模块级
build.gradle文件,确认所有com.android.support开头的依赖已经被替换为AndroidX对应依赖,未自动替换的手动修改,例如com.android.support:appcompat-v7:28.0.0替换为androidx.appcompat:appcompat:1.6.1 - 排查全路径类名引用,包括布局文件中的自定义View全路径、代码中的静态引用、反射调用的旧支持库类,手动替换为对应的AndroidX类
- 执行
File > Invalidate Caches / Restart,选择「Invalidate and Restart」重启Android Studio清除构建缓存
第四步:验证项目
所有报错修复完成后,依次执行Build > Clean Project、Build > Rebuild Project,确认构建成功后,在不同Android版本的设备上运行测试,确认功能正常。
内容的提问来源于stack exchange,提问作者joyned
相关产品推荐
相关产品推荐


