Gradle failed to resolve com.google.android.gms:pl

2020-06-03 04:02发布

I am trying to use google log in in my mobile app but I am getting following error after following google's tutorial.

"failed to resolve: com.google.android.gms:play-services-auth:11.6.0"

My gradle files :

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
        classpath 'com.google.gms:google-services:3.1.0'


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

allprojects {
    repositories {
        jcenter()
    }
}

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

and the other one is :

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

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.myapp.myapp"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    testCompile 'junit:junit:4.12'
    compile 'com.google.android.gms:play-services-auth:11.6.0'
}

So what is wrong here and why I cannot build the project?

3条回答
甜甜的少女心
2楼-- · 2020-06-03 04:50

Identifying the issue:

There is a conflict in libraries version, you are using 'com.google.android.gms:play-services-auth:11.6.0' and that's the last version now which required a compatible compileSdkVersion and targetSdkVersion

Why it's happened?:

Compiling lib contain a higher api level than your app api level make that.

Solution:

Upload your compileSdkVersion also targetSdkVersion to last version (Now it's 27) , and your com.android.support too, to be compatible with whole app and libs.

Also you have to add google() to your repositories as well:

repositories {
    jcenter()
    google()
}
.........
allprojects {
repositories {
    jcenter() 
    google()
    }
}

Note: Updating targetSdkVersion not required for this issue, but it's better to product app targeting a wide range of devices.

查看更多
够拽才男人
3楼-- · 2020-06-03 05:03

I had the same issue and I was able to resolve it by adding maven { url "https://maven.google.com" } to list of repositories in project level build.gradle as shown below.

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

Also, ensure this apply plugin: 'com.google.gms.google-services' comes after your dependencies to avoid version issues.

查看更多
相关推荐>>
4楼-- · 2020-06-03 05:03

Make sure that you have downloaded GooglePlay Services in SDK Manager

Please, move this line :

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

at the end of the gradle file (it MUST be at the end)

Also, you may upgrade versions :

classpath 'com.android.tools.build:gradle:3.0.0'
classpath 'com.google.gms:google-services:3.1.1'

Add also google() in repositories :

 buildscript {
        repositories {
            jcenter()
            google()
        }

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

    allprojects {
        repositories {
            jcenter() 
            google()
        }
    }

task clean(type: Delete) {
    delete rootProject.buildDir
}
查看更多
登录 后发表回答