安卓编译问题

看下这个是gradle里面配置的minsdk 版本有问题,需要从34改成30,这里面特意还指出了是哪个lib

能引用到,但是一直有红线说依赖有问题,是因为a用的implementation 一来的b, b又依赖了c 这个类在c里面,a模块引用不到

因为impement 依赖不具备传递性,需要把implementation改成api,api具有依赖传递性

依赖报的错误都是mutidefine 和megerDex报错

实践

1.先找到报错信息,哪个类重复定义了

2.搜索这个类在哪个lib里面 确定这个依赖lib

3.在android studio里面全局搜索这个lib 可以看到在哪些gradle里面依赖了 (有没有传递依赖)

再看看自己这个gradle

对比那些是重复依赖了

exclude掉就行了

或者哪些不用的 直接删除这个依赖,如果没有用到

有些工程 debug 编译没问题,但是Relase编译报错。也是这样

或者

1.跟上面一样确定重复依赖的lib

然后,打印依赖树,过滤搜索这个包 就知道哪些依赖依赖了这个lib包了

相关推荐
AmazingMQ22 分钟前
Android 13----在framworks层映射一个物理按键
android
小李飞飞砖33 分钟前
Android 插件化实现原理详解
android
m0_5973453142 分钟前
【Android】安卓四大组件之广播接收器(Broadcast Receiver):从基础到进阶
android·java·boradcast·安卓四大组件
whysqwhw1 小时前
OkHttp PublicSuffix包的后缀列表处理
android
yeziyfx2 小时前
kotlin中集合的用法
android·开发语言·kotlin
EngZegNgi3 小时前
安卓应用启动崩溃的问题排查记录
android·crash·启动崩溃
火柴就是我4 小时前
每日见闻之Container Decoration
android·flutter
天枢破军4 小时前
【AOSP】解决repo拉取提示无法连接android.googlesource.com
android
whysqwhw4 小时前
OkHttp之AndroidPlatform类分析
android
XiaolongTu4 小时前
Kotlin Flow详述:从一个“卡顿”问题到线程切换的本质
android·面试