Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot resolve GoogleSignIn and GoogleSignInClient

I am not able to use GoogleSignIn(com.google.android.gms.auth.api.signin.GoogleSignIn ) and GoogleSignInClient(com.google.android.gms.auth.api.signin.GoogleSignInClient ) while implementing Google Sign In in Android Studio while I can access other classes in App like

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

A strip down version of my build.gradle(app) file is as follow

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'

and my build.gradle(package) is

buildscript {

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

Any help would be appreciated

like image 904
pcforgeek Avatar asked Nov 10 '17 13:11

pcforgeek


People also ask

What is GoogleSignInClient?

public class GoogleSignInClient extends GoogleApi<GoogleSignInOptions> A client for interacting with the Google Sign In API.

What is GoogleSignInOptions?

GoogleSignInOptions contains options used to configure the Auth.


3 Answers

add this to your app-level dependency

compile 'com.google.android.gms:play-services-auth:12.0.1'
like image 71
Toe Avatar answered Oct 16 '22 21:10

Toe


I was having the same issue

GoogleSignIn and GoogleSignInClient were introduced in version Google Play services SDK version 11.6. In older versions GoogleApiClient was used.

So try changing the compile 'com.google.android.gms:play-services-auth:11.4.2' to 'com.google.android.gms:play-services-auth:12.0.1' in dependencies

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

like image 22
Karan sharma Avatar answered Oct 16 '22 20:10

Karan sharma


For me I was applying a plugin for the google play services in my app's build.gradle:

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

along with that in my Project's Build.gradle I had google services.

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
    }
}

I remember I added them with some compiling issues. But apparently I didn't need them.

By removing them I found there were no more issues with the gms versions.

EDIT

So removing solved my issue initially, but gave me issues later with google sign in. adding the apply plugin: 'com.google.gms.google-services' to the bottom of my projects gradle instead of at the top did actually solve it.

like image 5
Raymond Avatar answered Oct 16 '22 22:10

Raymond