首页 > 解决方案 > 错误:在项目“应用程序”中,已解决的 Google Play 服务库依赖项在集成 onesignal 时依赖于另一个确切版本

问题描述

我试图在我的应用程序中实现 oneSignal 但我收到错误消息

错误:在项目“应用程序”中,已解析的 Google Play 服务库依赖项依赖于另一个确切版本(例如“[10.2.1, 16.0.99]”,但未解析为该版本。库表现出的行为将是未知的。

依赖失败:com.onesignal:OneSignal:3.12.3 -> com.google.android.gms:play-services-location@[10.2.1, 16.0.99],但 play-services-location 版本为 15.0.1 .

以下依赖项是直接的或具有传递依赖项的项目依赖项,这些依赖项会导致存在问题的艺术 ifact。-- 项目 'app' 依赖于 com.google.android.gms:play-services-location@{strictly 15.0.1} -- 项目'app' 依赖于 com.onesignal:OneSignal@{strictly 3.12.3}

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

这是我的毕业班


    apply plugin: 'com.android.application'
    apply plugin: 'com.google.gms.google-services'

    buildscript {
        repositories {
            maven { url 'https://plugins.gradle.org/m2/'}
        }
        dependencies {
            classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.4, 0.99.99]'
        }
    }
    apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'

    repositories {
        maven { url 'https://maven.google.com' }
    }


    android {
        compileSdkVersion 29
        buildToolsVersion "29.0.2"
        defaultConfig {
            applicationId "com.example.gerobokgo"
            minSdkVersion 26
            targetSdkVersion 29
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "androidx.Test.runner.AndroidJUnitRunner"
            manifestPlaceholders = [
                    onesignal_app_id: '560003c8-bceb-4896-bf78-435948f4fc6d',
                    // Project number pulled from dashboard, local value is ignored.
                    onesignal_google_project_number: 'REMOTE'
            ]
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'androidx.appcompat:appcompat:1.1.0'
        implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
        implementation 'com.google.firebase:firebase-auth:16.0.5'
        implementation 'com.google.firebase:firebase-database:16.0.4'
        implementation 'com.google.firebase:firebase-core:16.0.8'
        implementation 'com.firebaseui:firebase-ui-database:4.3.2'
        implementation 'com.google.firebase:firebase-storage:16.0.4'

        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'androidx.test:runner:1.2.0'
        androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
        androidTestImplementation 'androidx.test.ext:junit:1.1.1'

        implementation 'com.squareup.picasso:picasso:2.5.2'
        //Layout
        implementation 'com.google.android.material:material:1.0.0'
        //recylervieer
        implementation 'androidx.recyclerview:recyclerview:1.0.0'

        // image slider
        implementation 'com.github.therealshabi:AutoImageFlipper:v1.4.1'

        //image Cropper
        implementation 'com.theartofdev.edmodo:android-image-cropper:2.1.+'
        implementation 'androidx.work:work-runtime:2.2.0'

        implementation 'com.braintreepayments:card-form:3.1.1'


        //onesignal
        implementation 'com.onesignal:OneSignal:[3.11.2, 3.99.99]'
    }


标签: javaandroidgradle

解决方案


我在这里的 Kotlin 项目中遇到了同样的问题,解决方案是将implementation 'androidx.fragment:fragment-ktx:1.2.2'依赖项添加到我的模块的 build.gradle 文件中。


推荐阅读