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

Android依赖版本冲突求助:Google服务相关依赖版本不兼容

解决Google Services版本冲突的简便方案

看了你的Gradle配置和错误日志,问题根源很明确:你项目里的Google Play Services、Firebase依赖版本完全不一致,而且没有指定google-services插件的版本,这直接触发了版本冲突报错。下面是一步到位的修复方法:

步骤1:统一所有Google相关依赖的版本

Google要求com.google.android.gms(Play Services)和com.google.firebase(Firebase)的版本必须完全一致,否则必然冲突。你的配置里混了9.6.1、10.2.1、11.0.4三个版本,必须全部改成同一个版本。这里推荐用你已经用的Firebase版本11.0.4,因为Firebase和Play Services版本必须对齐。

同时要清理重复依赖:你重复添加了play-services(这是一个大合集,不建议用,应该只加需要的模块)和multidex,把这些重复项删掉。

步骤2:指定google-services插件的版本

你的buildscript里没有声明google-services插件的版本,Gradle会默认拉取旧版本,而旧版本不兼容高版本的Play Services/Firebase。需要在buildscript的dependencies里添加指定版本的插件(和你的依赖版本匹配,11.0.4对应的插件版本是3.1.2,这是兼容的稳定版)。

修改后的完整Gradle配置

/**********My Gradle ************************/
buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
        // 必须添加Google仓库,否则拉不到google-services插件
        google()
    }
    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
        // 添加指定版本的google-services插件
        classpath 'com.google.gms:google-services:3.1.2'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
    google()
}

android {
    compileSdkVersion 26
    buildToolsVersion '27.0.3'
    defaultConfig {
        applicationId "com.example.company"
        minSdkVersion 15
        versionCode 8 //Update on store 25th may 18
        versionName "2.1"
        targetSdkVersion 26
        multiDexEnabled true
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }
    buildTypes {
        release {
            debuggable false
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    useLibrary 'org.apache.http.legacy'
}

dependencies {
    implementation files('libs/jxl-2.6.10.jar')
    implementation files('libs/ksoap2-android-assembly-3.4.0-jar-with-dependencies.jar')
    implementation 'com.android.support:design:24.2.1'
    implementation 'com.android.support:appcompat-v7:26.0.0'
    implementation 'com.android.support:cardview-v7:26.0.0'
    implementation 'com.android.support:support-v4:26.0.0'
    implementation 'com.github.bumptech.glide:glide:3.6.0'
    implementation 'com.android.support:multidex:1.0.0'
    // 统一所有Play Services版本为11.0.4,和Firebase版本对齐
    implementation 'com.google.android.gms:play-services-location:11.0.4'
    implementation 'com.google.android.gms:play-services-maps:11.0.4'
    implementation 'com.google.android.gms:play-services-identity:11.0.4'
    implementation 'com.google.android.gms:play-services-plus:11.0.4'
    // 删掉重复的play-services大合集,只保留需要的模块
    implementation 'com.github.boxme:squarecamera:1.1.0'
    implementation 'com.squareup.picasso:picasso:2.5.2'
    implementation 'com.android.support.constraint:constraint-layout:1.0.0-alpha9'
    implementation 'com.google.firebase:firebase-messaging:11.0.4'
    implementation 'id.zelory:compressor:2.1.0'
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
    implementation('com.crashlytics.sdk.android:crashlytics:2.8.0@aar') {
        transitive = true;
    }
}
apply plugin: 'com.google.gms.google-services'

额外注意点

  • 不要使用com.google.android.gms:play-services这个依赖,它包含了所有Play Services模块,会导致APK体积过大,而且容易引发版本冲突,只添加你实际需要的模块(比如location、maps等)即可。
  • 做完修改后,执行File -> Sync Project with Gradle Files,如果还是有问题,可以尝试Build -> Clean Project再重新构建。
  • 你之前参考的《Mixing dependencies versions》帖子核心也是版本统一,但可能你没有彻底清理所有不一致的版本,或者没指定google-services插件版本,导致问题没解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:48:26