web-dev-qa-db-ja.com

Gradleはcom.google.Android.gms:play-services-auth:11.6.0の解決に失敗しました

モバイルアプリでgoogleログインを使用しようとしていますが、googleのチュートリアルを実行した後に次のエラーが表示されます。

「解決に失敗しました:com.google.Android.gms:play-services-auth:11.6.0」

私のgradleファイル:

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
}

もう1つは:

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

ここで何が間違っているのか、なぜプロジェクトをビルドできないのですか?

10
user1474111

私は同じ問題を抱えていましたが、以下に示すように、プロジェクトレベルbuild.gradleのリポジトリのリストにmaven { url "https://maven.google.com" }を追加することで解決できました。

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

また、バージョンの問題を回避するために、このapply plugin: 'com.google.gms.google-services'が依存関係の後にくるようにしてください。

問題の特定:

ライブラリバージョンに競合があり、_'com.google.Android.gms:play-services-auth:11.6.0'_を使用しており、それが最後のバージョンですnow互換性のあるcompileSdkVersiontargetSdkVersionが必要です

なぜそれが起こったのですか?:

libをコンパイルすると、appapiレベルよりも高いapiレベルが含まれます。

解決策:

compileSdkVersiontargetSdkVersionを最後のバージョンにアップロードします(Now it _27_)、および_com.Android.support_も、全体と互換性を保つためにappおよびlibs。

また、リポジトリにもgoogle()を追加する必要があります。

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

注:targetSdkVersionの更新はこの問題には必要ありませんが、さまざまなデバイスを対象にappを作成する方が適切です。

2
user6490462

SDKマネージャーでGooglePlayサービスをダウンロードしたことを確認してください

この行を移動してください:

_apply plugin: 'com.google.gms.google-services'
_

gradleファイルの最後に(最後になければなりません)

また、バージョンをアップグレードできます:

_classpath 'com.Android.tools.build:gradle:3.0.0'
classpath 'com.google.gms:google-services:3.1.1'
_

リポジトリにgoogle()も追加します。

_ 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
}
_
0
Dany Pop