You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android集成Firebase+Crashlytics时出现Duplicate class重复类编译错误

问题根因

该报错由Google Play服务组件版本不匹配导致:你引入的Firebase BOM 29.0.0会拉取高版本的play-services-basement:17.0.0,但项目内的其他第三方依赖(如Facebook登录、Yoti SDK、Braintree支付SDK等)传递依赖了低版本的play-services-base:15.0.1,两个版本的组件内存在重复的类定义,因此触发编译冲突。

解决步骤
  • 优先使用全局版本强制对齐方案,在应用级build.gradle的dependencies代码块上方添加如下配置,统一所有Play服务组件的版本:
    configurations.all {
        resolutionStrategy {
            // 强制所有Play服务组件使用兼容的同版本实现
            force "com.google.android.gms:play-services-base:17.0.0"
            force "com.google.android.gms:play-services-basement:17.0.0"
        }
    }
    
  • 若需要定位具体引入旧版Play服务的第三方依赖,可以在Android Studio终端执行如下命令打印依赖树排查:
    ./gradlew app:dependencies | grep play-services-base
    
  • 排查到具体依赖后,也可以对单个依赖做组排除,示例如下(以Facebook登录依赖为例):
    implementation ('com.facebook.android:facebook-login:9.1.1') {
        exclude group: 'com.google.android.gms'
    }
    
  • 配置完成后清理缓存,依次执行Build -> Clean Project、Build -> Rebuild Project即可完成编译。

内容的提问来源于stack exchange,提问作者Alex Petev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 00:45:08