...“ app”中的android项目已解决的Google Play服务库依赖项依赖于另一个版本

时间:2019-12-28 10:48:56

标签: android firebase gradle

我有一个运行良好的应用程序,但今天在构建项目时出现了错误。 我整天都在尝试从堆栈中获取太多解决方案。什么都没用。

我有以下应用-> build.gradle

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion 29
    defaultConfig {
        applicationId "com.myapp.immuno"
        minSdkVersion 16
        targetSdkVersion 29
        versionCode 1
        versionName "2.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            aaptOptions.cruncherEnabled = false // here
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'androidx.navigation:navigation-fragment:2.1.0'
    implementation 'androidx.navigation:navigation-ui:2.1.0'
    implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'

    implementation 'com.google.code.gson:gson:2.8.5'

    // Firebase libraries
    implementation 'com.google.firebase:firebase-core:17.2.1'
    implementation 'com.google.firebase:firebase-messaging:20.1.0'
    implementation 'com.google.firebase:firebase-analytics:17.2.1'
    implementation 'com.google.android.gms:play-services-auth:17.0.0'
    implementation 'com.google.firebase:firebase-auth:19.2.0'
    implementation 'com.google.firebase:firebase-crash:16.2.1'
    implementation 'com.google.firebase:firebase-database:19.2.0'
    implementation 'com.google.firebase:firebase-storage:19.1.0'

    // circular image
    implementation 'de.hdodenhof:circleimageview:2.2.0'

    // RecyclerView
    //noinspection GradleCompatible
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    //FacebookSdk
    //implementation 'com.facebook.android:facebook-android-sdk:4.37.0'
    //implementation 'com.facebook.android:facebook-login:4.37.0'

    // volley library
    implementation 'com.android.volley:volley:1.1.1'

    implementation 'com.google.android.gms:play-services:17.0.0'
    implementation 'me.dm7.barcodescanner:zxing:1.9.8'

    // Glide library to load images smoothly
    implementation 'com.github.bumptech.glide:glide:4.8.0'
    annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'

    // To get date and time
    implementation 'net.danlew:android.joda:2.10.1.1'

    // external libraries for mail
    implementation files('libs/activation.jar')
    implementation files('libs/additionnal.jar')
    implementation files('libs/mail.jar')

    // Add the Fabric Crashlytics plugin.
    //classpath 'io.fabric.tools:gradle:1.31.2'
    // Add the Firebase Crashlytics dependency.
    implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'


    }

    apply plugin: 'com.google.gms.google-services'
`

and build.gradle是

buildscript {
    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.3'
        classpath 'com.google.gms:google-services:4.3.3'
        classpath 'io.fabric.tools:gradle:1.31.2'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()

    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

在构建项目时出现此错误

  

错误:在项目“应用”中,一个已解析的Google Play服务库依赖项依赖于另一个版本(例如“ [20.0.2]”),但没有被解析为该版本。不为人知。

     

依赖性失败:com.google.firebase:firebase-messaging:20.1.0-> com.google.firebase:firebase-iid @ [20.0.2],但firebase-iid版本为19.0.0。

The following dependencies are project dependencies that are direct or have transitive dependencies that lead to the art
ifact with the issue.
-- Project 'app' depends onto com.google.firebase:firebase-iid@{strictly 19.0.0}
-- Project 'app' depends onto com.google.firebase:firebase-core@17.2.1
-- Project 'app' depends onto com.google.firebase:firebase-crash@16.2.1
-- Project 'app' depends onto com.google.firebase:firebase-messaging@{strictly 20.1.0}
-- Project 'app' depends onto com.google.firebase:firebase-messaging@20.1.0
-- Project 'app' depends onto com.google.firebase:firebase-crash@{strictly 16.2.1}
-- Project 'app' depends onto com.google.firebase:firebase-analytics@17.2.1
-- Project 'app' depends onto com.google.firebase:firebase-core@{strictly 17.2.1}
-- Project 'app' depends onto com.google.firebase:firebase-analytics@{strictly 17.2.1}
-- Project 'app' depends onto com.google.android.gms:play-services-measurement-api@{strictly 17.2.1}
     

有关扩展的调试信息,请使用./gradlew --info:app:assembleDebug从命令行执行Gradle,以查看工件的依赖路径。此错误消息来自google-services Gradle插件,在https://github.com/google/play-services-plugins报告问题,并通过向您的build.gradle文件添加“ googleServices {disableVersionCheck = false}”来禁用该消息。

4 个答案:

答案 0 :(得分:1)

这是我执行的步骤并已解决问题:

  1. 我将com.google.firebase:firebase-messaging:20.1.0更改为com.google.firebase:firebase-messaging:20.0.1
  2. 同步gradle
  3. 然后回滚更改(将 20.0.1 更改为 20.1.0
  4. 如果同步并运行应用程序,您将看到问题已解决!

我知道这不是正确的方法,但解决了我的问题。任何更正均应替换。

答案 1 :(得分:0)

对我来说,老式的重新启动计算机技巧是这样做的,因为重新启动Android Studio并清除缓存后,我遇到了同样的问题。

答案 2 :(得分:0)

只需将库版本更新为

 implementation 'com.google.firebase:firebase-messaging:20.2.0'

最后同步应用程序,您将看到解决问题的方法!

答案 3 :(得分:0)

尝试以下两个步骤可以解决很多此类问题-

  1. 构建 -> 清理项目
  2. File -> Invalid Caches/Restart 在菜单中,您可以使缓存无效或无效并重新启动(我更喜欢)

干杯...