Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在项目中';app&x27;已解决的Google Play服务库依赖依赖于另一个精确版本_Android_Android Gradle Plugin_Firebaseui - Fatal编程技术网

Android 在项目中';app&x27;已解决的Google Play服务库依赖依赖于另一个精确版本

Android 在项目中';app&x27;已解决的Google Play服务库依赖依赖于另一个精确版本,android,android-gradle-plugin,firebaseui,Android,Android Gradle Plugin,Firebaseui,尝试使用FireStore和Google身份验证创建一个简单的应用程序。gradle有问题: 在项目“app”中,已解决Google Play services库依赖关系 依赖于另一个精确版本(例如“[15.0.1]”,但不是 正在解析为该版本。库显示的行为将 不知道 依赖失败:com.google.android.gms:play服务标志:15.0.1 ->com.google.android.gms:游戏服务库@[ 15.0.1],但play services的基本版本是16.0.1 以下依

尝试使用FireStore和Google身份验证创建一个简单的应用程序。gradle有问题:

在项目“app”中,已解决Google Play services库依赖关系 依赖于另一个精确版本(例如“[15.0.1]”,但不是 正在解析为该版本。库显示的行为将 不知道

依赖失败:com.google.android.gms:play服务标志:15.0.1 ->com.google.android.gms:游戏服务库@[ 15.0.1],但play services的基本版本是16.0.1

以下依赖项是直接或间接的项目依赖项 具有可传递的依赖关系,从而导致与 问题 --项目“应用程序”依赖于com.google.firebase:firebase-firestore@17.1.5 --项目“应用程序”依赖于com.firebaseui:firebaseui-auth@4.2.0

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

格拉德尔项目:

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'

        classpath 'com.google.gms:google-services:4.2.0'

    }
}

有人能帮我吗?

问题是它缺少依赖项。 添加com.google.firebase:firebase auth解决了这个问题

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.google.firebase:firebase-firestore:17.1.5'

//    implementation'com.google.firebase:firebase-core:16.0.6'
//    implementation'com.google.firebase:firebase-storage:16.0.5'

    implementation'com.google.firebase:firebase-auth:16.1.0' => add this line
    implementation 'com.firebaseui:firebase-ui-auth:4.2.0'
}

将我所有的Google Play服务库更新为所有模块中的最新版本为我解决了这个问题。我看不出你有任何Google Play服务库,但我想把这个答案留给那些可能觉得有用的人。

谢谢,但不幸的是,这对我来说并不完全有效。我还必须在我的构建中添加以下内容.年级(模块:应用程序)

Google Services 4.2.0中存在一个问题可能会导致此问题。在项目的构建中,将Google Services版本降级为4.1.0。gradle可能会解决此问题

buildscript {
    dependencies {
        classpath 'com.google.gms:google-services:4.1.0' //decreased from 4.2.0
    }
}

将FCM添加到你的应用程序添加了较低的依赖项,然后我将依赖项更改为此问题已解决的最新版本

compile 'com.google.firebase:firebase-messaging:17.3.4'


我在我的项目中将最新版本的firebase messaging添加到build.gradle(模块:app)中,并解决了问题

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

对我来说,可行的解决方案是删除“firebase auth”并添加“firebase core”依赖项。但在几次项目重建后,我开始遇到另一个编译问题,因此我不得不在“firebase core”之外添加“firebase auth”依赖项,以使其正常工作:

implementation 'com.google.firebase:firebase-auth:19.0.0'
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.firebaseui:firebase-ui-auth:4.3.1'

这里有许多答案可供个别解决方案参考,但这些解决方案并不能真正解决问题。以下是解决问题的一般方法。

如原始日志输出所示,使用以下命令在终端中运行构建非常有用:

/gradlew--info assembleDebug

这将为您提供冲突中涉及的所有依赖项的列表。它看起来与此类似(我删除了包名内容以使其更具可读性):

从这个列表中,您可以了解两件事:

  • 在哪里可以找到冲突的依赖关系
  • 设置了冲突依赖项的哪些版本
  • 在我的例子中,冲突的依赖项是
    firebase iid
    :它要么是
    @19.0.0
    要么是
    @16.2.0

    要解决此问题,必须在
    build.gralde
    中明确定义错误的
    firebase iid
    的顶级依赖项

    因此,在上面的日志中,您可以看到firebase过时版本的两个示例-iid@16.2.0.一个来自
    ——任务/模块dep->firebase-messaging@17.1.0
    另一个来自第三方库(pressenger)。我们对第三方库没有影响,因此在此不做任何事情。 但对于另一个依赖项,我们必须使用正确的版本显式声明它:

    implementation'com.google.firebase:firebase消息:20.0.0'


    现在构建工作又开始了。大团圆结局:)

    我的项目运行良好(没有构建问题)。突然,我犯了这个错误

    “已解决的Google Play services库依赖于另一个精确版本的库…”

    我发现这是因为我在离线构建


    如果有人遇到同样的错误,请检查您是否正在脱机构建

    如果您的网络不安全,并且您收到不受信任证书的提示,这对我来说是一件新鲜事

    如果您将接受或拒绝
    ,它将给出此错误,直到您的网络不安全为止


    您可以通过检查设置->渐变->脱机模式来脱机工作

    有一个与google服务相关的bug,该bug最终在版本
    4.3.3
    中修复

    因此,您可以使用4.3.3或

    或降级至4.1.0

    classpath 'com.google.gms:google-services:4.1.0'
    

    其他答案都不适合我。我的用例是使用
    React Native 61+
    尝试设置FCM和分析。对我来说,最有效的方法是在
    android/build.gradle

    dependencies {
        classpath "com.android.tools.build:gradle:3.4.2"
        classpath "com.google.gms:google-services:4.3.3" // Need the latest here
    }
    
    然后将gradle依赖项添加到我使用的产品所需的android/app/build.gradle(在我的例子中是分析和云消息)


    你的
    app/build.gradle
    可能会在Android Studio中的依赖项部分阻止这些柠檬色,如下图所示


    这些(柠檬色块)意味着它不是最新版本的依赖关系。只需将鼠标放在每个块上,IDE(Android Studio)就会告诉您必须更改的数字

    如果您使用了song haesuk答案,则需要在build.gradle项目(依赖项中的类路径)和build.gradle应用程序(实现)中都使用它。如果更改导入应用程序的任何库的生成,也要执行相同的操作

    我使用暗示
    implementation 'com.google.firebase:firebase-auth:19.0.0'
    implementation 'com.google.firebase:firebase-core:17.0.1'
    implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
    
    Dependency Resolution Help: Displaying all currently known paths to any version of the dependency: Artifact(groupId=com.google.firebase, artifactId=firebase-iid)
    
    -- task/module dep -> firebase-analytics@17.2.0
    ---- firebase-analytics:17.2.0 library depends -> play-services-measurement-api@17.2.0
    ------ play-services-measurement-api:17.2.0 library depends -> firebase-iid@19.0.0
    
    -- task/module dep -> firebase-core@17.2.0
    ---- firebase-core:17.2.0 library depends -> firebase-analytics@17.2.0
    ------ firebase-analytics:17.2.0 library depends -> play-services-measurement-api@17.2.0
    -------- play-services-measurement-api:17.2.0 library depends -> firebase-iid@19.0.0
    
    -- task/module dep -> play-services-measurement-api@17.2.0
    ---- play-services-measurement-api:17.2.0 library depends -> firebase-iid@19.0.0
    
    -- task/module dep -> firebase-iid@19.0.0
    
    -- task/module dep -> firebase-messaging@17.1.0
    ---- firebase-messaging:17.1.0 library depends -> firebase-iid@[16.2.0]
    
    -- task/module dep -> com.pressenger:sdk@4.8.0
    ---- com.pressenger:sdk:4.8.0 library depends -> firebase-messaging@17.1.0
    ------ firebase-messaging:17.1.0 library depends -> firebase-iid@[16.2.0]
    
    classpath 'com.google.gms:google-services:4.3.3' // or latest version
    
    classpath 'com.google.gms:google-services:4.1.0'
    
    dependencies {
        classpath "com.android.tools.build:gradle:3.4.2"
        classpath "com.google.gms:google-services:4.3.3" // Need the latest here
    }
    
    dependencies {
        ...
        // add the Firebase SDK for Google Analytics
        implementation 'com.google.firebase:firebase-messaging:20.1.0'
        implementation 'com.google.firebase:firebase-analytics:17.2.2'
        ...
    }
    
    classpath 'com.google.gms:google-services:4.3.3'
    
    implementation 'com.google.firebase:firebase-core:17.3.0'
    implementation 'com.google.firebase:firebase-messaging:20.1.5'
    
    implementation 'com.google.firebase:firebase-database:19.3.0'
    implementation 'com.google.firebase:firebase-auth:19.3.1'
    implementation 'com.google.firebase:firebase-messaging:20.1.7'
    implementation 'com.google.firebase:firebase-core:17.4.0'
    implementation 'com.google.firebase:firebase-storage:19.1.1'
    
    implementation 'com.google.firebase:firebase-analytics:17.2.2'
    
    apply plugin: 'com.google.gms.google-services'
    
    dependencies {
      testImplementation 'junit:junit:4.12'
      androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
      androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
      implementation 'androidx.multidex:multidex:2.0.0'
    }
    
    dependencies {
        implementation fileTree(include: ['*.jar'], dir: 'libs')
        implementation 'com.android.support:appcompat-v7:27.1.1'
        implementation 'com.android.support.constraint:constraint-layout:1.1.3'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
        //Android Support Design Library
        implementation 'com.android.support:design:27.1.1'
        //RecyclerView
        implementation 'com.android.support:recyclerview-v7:27.1.1'
        // Support multidex
        implementation 'com.android.support:multidex:1.0.3'
        // Firebase Core
        // implementation 'com.google.firebase:firebase-core:16.0.1'
        //Firebase Authentication
        implementation 'com.google.firebase:firebase-auth:19.3.1'
        // Firestore Firestore
        implementation 'com.google.firebase:firebase-firestore:21.4.3'
        implementation 'com.google.firebase:firebase-analytics:17.2.2'
        // glide
        implementation 'com.github.bumptech.glide:glide:4.8.0'
        annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
    
        // Circle ImageView
        implementation 'de.hdodenhof:circleimageview:2.2.0'
    }
    apply plugin: 'com.google.gms.google-services'
    
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.3'
        classpath 'com.google.gms:google-services:4.3.3'
    
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
    
    apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
    apply plugin: 'com.android.application'
    
    This worked for me!
    
    dependencies {
        classpath "com.android.tools.build:gradle:3.4.2"
        classpath "com.google.gms:google-services:4.3.3" // Need the latest here
    }
    
    dependencies {
        ...
        // add the Firebase SDK for Google Analytics
        implementation 'com.google.firebase:firebase-messaging:20.1.0'
        implementation 'com.google.firebase:firebase-analytics:17.2.2'
        ...
    }