繁体   English   中英

无法解析 com.google.android.gms play-services-auth:11.4.0

[英]Failed to resolve com.google.android.gms play-services-auth:11.4.0

我正在尝试为 Android FirebaseUI 编写代码 — 在我的 android 项目中进行身份验证,但从最近两天开始,我的当前代码出现错误并且不知道如何修复它。 努力尝试,但没有以正确的方式发生。

这是我的 build.gradle(project:FriendlyChat)

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        mavenLocal()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

allprojects {
    repositories {
        jcenter()
        mavenLocal()
    }
}

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

这是我的 build.gradle(Module:app)

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

repositories {
    mavenLocal()
    flatDir {
        dirs 'libs'
    }
}

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.1"

    defaultConfig {
        applicationId "com.google.firebase.udacity.friendlychat"
        minSdkVersion 16
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE-FIREBASE.txt'
        exclude 'META-INF/NOTICE'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    // Displaying images
    compile 'com.android.support:design:24.2.1'
    compile 'com.android.support:appcompat-v7:24.2.1'
    compile 'com.github.bumptech.glide:glide:3.6.1'
    compile 'com.google.firebase:firebase-database:11.0.4'
    compile 'com.google.firebase:firebase-auth:11.0.4'
   compile 'com.google.android.gms:play-services-auth:11.4.0'

    testCompile 'junit:junit:4.12'
}

无法解析 com.google.android.gms play-services-auth:11.4.0 。

maven { url "https://maven.google.com" }到您的根级build.gradle文件中

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}

从 11.2.0开始需要这个 maven repo。

您也可以使用google()快捷方式,但在使用前请检查要求

还要注意,因为您使用的是不同的版本。 使用相同的版本。

compile 'com.google.firebase:firebase-database:11.0.4'
compile 'com.google.firebase:firebase-auth:11.0.4'
compile 'com.google.android.gms:play-services-auth:11.4.0'

更新

Firebase Android SDK 和 Google Play 服务库现在具有独立的版本号,允许更频繁、更灵活的更新。 将 google play 服务 gradle 插件版本更新到最新版本(至少 3.3.1)。

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

并将库更新到最新版本

google()存储库添加到您的“build.gradle”文件。 这个 gradle 方法相当于maven { url "https://maven.google.com" }

repositories {
    jcenter()
    google()
}

此错误意味着您的 android studio 中未安装 google play services 11.4.0。
要解决此问题,您需要将依赖项的版本更改为您的 android studio 中安装的版本。
为此,请转到:项目结构 -> 项目设置 -> 模块 -> 依赖项
这里点击+号。 找到你想要的依赖。你可以在这里查看它的版本。你也可以从这里将依赖添加到你的项目中。

看这里

始终建议您从 SDK 管理器更新您的 google play 服务 SDK 工具并使用最新版本。

将此添加到您的项目级别 gradle 文件中

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}

我今天在这里遇到了同样的问题,只需要在“文件 >> 设置 >> 构建、执行、部署 >> Gradle >> 离线工作”上禁用 gradle 离线工作选项。

更改您的顶级依赖项 gradle 设置

// 顶级构建文件,您可以在其中添加所有子项目/模块通用的配置选项。

buildscript {
    repositories {
        jcenter()
        mavenLocal()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

allprojects {
    repositories {
        jcenter()
        mavenLocal()
    }
}

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

来自 Firebase文档

// ADD THIS AT THE BOTTOM
apply plugin: 'com.google.gms.google-services'

此行的底部位置而不是顶部(在应用插件下方:'com.android.application')。

更改您的顶级依赖项 gradle 设置

打开这个文件 --> build.gradle(项目:*****)

和过去的代码

buildscript {
    repositories {
        mavenLocal()
        mavenCentral()
        maven {
            url "https://maven.google.com"
        }
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
        google()
    }
}

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

或者只是改变

classpath 'com.android.tools.build:gradle:2.2.2'

 classpath 'com.android.tools.build:gradle:3.0.1'

在我的情况下,我打开了 gradle 离线模式,这就是为什么它无法找到该版本播放服务的缓存文件或无法解析的原因。 当我将其重新打开时,现在一切正常。

Android Studio ->> 文件 ->> Gradle ->> 离线 ->> 取消选中

Android studio 3.2 请按照以下步骤操作。

1.使缓存和重启选项无效。 文件->无效/重启

  1. 删除 .gradle 文件夹。

它将在下次启动时同步库。

就我而言,我已经安装了google()存储库。 在重新启动 Android Studio 之前,我无法解决依赖关系。 我的猜测是它无法解决,因为我当天早些时候打开 Charles 时有一些挥之不去的代理配置。

你可以去maven查看最新版本

https://mvnrepository.com/artifact/com.google.android.gms/play-services

然后将 maven { URL " https://maven.google.com " } 添加到您的根级 build.gradle 文件中

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}
> maven {
            url "https://maven.google.com"
        }
 repositories {
    jcenter()
    google()
}


 use this

`implementation 'com.google.android.gms:play-services-ads:19.3.0'` 

instead of

`compile 'com.google.android.gms:play-services-auth:11.4.0'`

    

我删除了每个 firebase 插件,例如:

  1. firebase_core
  2. cloud_firestore
  3. firebase_dynamic_links
  4. firebase_messaging
  5. firebase_auth

来自pubspec.yaml

并运行pub getflutter run

再次添加包

再次运行pub getflutter run

为我工作。

如果不固定,请一一尝试打包

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM