1、定位问题,当没有具体的错误信息时,很有可能是冲突导致的,我们可以在AndroidStudio自带的terminal里输入如下命令查看详细错误信息
windows电脑下命令:gradlew assembleDebug --stacktrace
mac电脑下命令:./gradlew assembleDebug --stacktrace
2、如果是依赖库版本不一致冲突,改为一致即可,一般是以高版本的为主
3、如果是依赖重复冲突,可通过下面(4、5)两种方法尝试解决
当然也可以通过替换包来解决(适用于引入的两个包都是同一第三方的)比如接入了腾讯的视屏播放,又接入了腾讯其他的功能比如这两个包 LiteAVSDK_Player_5.4.6097和com.tencent.liteav:LiteAVSDK_TRTC,一起引入就会有冲突,这个时候只需要将这两个引用替换成 LiteAVSDK_Professional_9.4.10921即可
4、如果项目 通过本地 AAR 依赖有冲突,可以尝试将 aar 以 Module 的方式添加到工程中
5、如果项目 通过 Maven 仓库依赖 有冲突,可以使用 exclude 去掉冲突部分
去掉依赖库中的某个冲突包,如下
去掉 module 引用的 'com.tencent.liteav:LiteAVSDK_TRTC'的相关内容,如下
implementation(project(':tempLibrary')) {
exclude group: 'com.tencent.liteav:LiteAVSDK_TRTC', module: 'LiteAVSDK_TRTC'
}
去掉依赖库中的某个冲突包,如下
compile ('com.github.MagicMashRoom:SuperCalendar:1.6'){
exclude group: 'com.android.support'
}
网友评论