无法解析GoogleSignIn和GoogleSignInClient

时间:2017-11-10 13:43:37

标签: android google-api google-oauth

我无法使用GoogleSignIn( com.google.android.gms.auth.api.signin.GoogleSignIn )和GoogleSignInClient( com.google.android.gms.auth.api.signin.GoogleSignInClient )在Android Studio中实现Google登录,同时我可以访问App中的其他类,如

com.google.android.gms.auth.api.signin.GoogleSignInAccount;
com.google.android.gms.auth.api.signin.GoogleSignInOptions;
com.google.android.gms.common.SignInButton;

我的build.gradle(app)文件的精简版本如下

android {

}

dependencies {

    compile 'com.google.android.gms:play-services-auth:11.4.2'
    compile('com.google.api-client:google-api-client-android:1.23.0') {
        exclude group: 'org.apache.httpcomponents'
    }
    compile('com.google.apis:google-api-services-gmail:v1-rev72-1.23.0') {
        exclude group: 'org.apache.httpcomponents'
    }
    implementation 'com.google.gms:google-services:3.1.2'
}

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

我的build.gradle(包)是

buildscript {

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
        classpath 'com.google.gms:google-services:3.1.2'
    }
}

任何帮助将不胜感激

5 个答案:

答案 0 :(得分:19)

将此添加到您的应用级依赖关系

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

答案 1 :(得分:12)

我遇到了同样的问题

Google Play服务SDK版本11.6中引入了

GoogleSignIn GoogleSignInClient 。在旧版本中使用了GoogleApiClient。

请尝试将编译'com.google.android.gms:play-services-auth:11.4.2'更改为'com.google.android.gms:play-services -auth:依赖项中的12.0.1'

<强>依赖关系 { compile 'com.google.android.gms:play-services-auth:12.0.1'  }

答案 2 :(得分:5)

对于我,我在应用的build.gradle 中为Google Play服务应用了一个插件:

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

以及我项目的Build.gradle 中的内容我有谷歌服务。

buildscript {
    ext.kotlin_version = '1.1.60'
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.google.gms:google-services:3.1.2' // <== this guy
        classpath 'com.android.tools.build:gradle:3.0.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

我记得我添加了一些编译问题。但显然我不需要它们。

通过移除它们,我发现gms版本没有更多问题。

修改

因此,删除最初解决了我的问题,但稍后通过google登录向我提出了问题。将 apply plugin:'com.google.gms.google-services'添加到我的项目底部gradle而不是在顶部确实解决了它。

答案 3 :(得分:2)

build.gradle 模块脚本中,我必须添加这两个依赖项,然后“立即同步”并为我解决问题。

dependencies {  
    // Your own command lines
    //...

    compile 'com.google.android.gms:play-services-drive:11.8.0'
    compile 'com.google.android.gms:play-services-auth:11.8.0'
}

答案 4 :(得分:1)

你不能使用任何更新版本吗?例如11.6.0。 尝试更新您的Google信息库。 (工具 - &gt; Android-&gt; SDK管理器 - &gt;支持信息库下的SDK工具)