Обновление до служб Google Play: 9.0.0 Ошибка. Не удалось устранить: com.google.android.gms: play-services-measurement: 9.0.0.


125

Я обновил свой файл build.gradle с

compile 'com.google.android.gms:play-services:8.4.0'

в

compile 'com.google.android.gms:play-services:9.0.0'

и теперь я получаю эту ошибку, которой не получал раньше.

Ошибка: не удалось устранить: com.google.android.gms: play-services-measurement: 9.0.0 введите описание изображения здесь

введите описание изображения здесь


2
Вы обновили свой репозиторий Google в SDK Manager?
CommonsWare

1
Хммм ... когда я смотрю на POM для play-services:9.0.0в моем SDK, я не вижу , play-services-measurementкак зависимость, и нет 9.0.0из play-services-measurement. Вы запрашиваете вручную play-services-measurement? Если нет, попробуйте очистить проект или выполнить gradleсборку из командной строки с --refresh-dependenciesпереключателем, чтобы попытаться заставить его перестать искать play-services-measurement. В целом, однако, вам, вероятно, лучше использовать более сфокусированные зависимости (те, которые вы закомментировали), а не зависимость от «кухонной раковины» play-services.
CommonsWare

1
1. Я вообще не запрашиваю измерения игровых сервисов, ни где в моем коде. 2. Перешел на play-сервис "кухонная мойка" из-за этой ошибки. 3. Возможно, мне придется сделать это обновление, чего я никогда раньше не делал.
Philip BH

1
* Что пошло не так: возникла проблема при настройке проекта ': app'. > Не удалось разрешить все зависимости для конфигурации ': app: _debugCompile'. > Не удалось найти com.google.android.gms: play-services-measurement: 9.0.0. Выполнялся поиск в следующих местах: jcenter.bintray.com/com/google/android/gms/… .0.0 / play-services-measure-9.0.0.pom
Philip BH

1
Предполагая, что приведенный ниже ответ не решает вашу проблему, вам необходимо определить, что пытается загрузить эту зависимость (и, в частности, эту версию). play-servicesбольше не требует этого, начиная с 9.0.0, поэтому это должно быть что-то еще.
CommonsWare

Ответы:


246

Было обнаружено, что это решает проблему.

Обновите свой путь com.google.gms:google-services:2.1.0к классам в Gradle уровня проекта до пути к классамcom.google.gms:google-services:3.0.0


39
Если кто-то не находит его ... это изменение должно быть сделано в build.gradle верхнего уровня .... у меня это сработало, но затем я получил эту ошибку «Отсутствует объект api_key / current_key», поэтому мне пришлось применить это решение stackoverflow.com/a/37317752/50730
Хавьер Торон,

Я получаю старую ошибку "Атрибут" ориентация "уже определена". Обновлен путь к классам google-services до 3.0.0. Включенный GCM и добавленный ключ API сервера tat создается в файле google-services.json. Кто-нибудь может мне помочь?
cgr

1
Теперь ошибка изменилась на «Ошибка: выполнение не удалось выполнить для задачи»: app: processFreeDebugGoogleServices '.> Отсутствует объект api_key / current_key »???
LemonGentry

5
С уважением, может кто-нибудь объяснить, почему это «исправление» работает? Я считаю, что качество ответов SO, которые просто дают рекомендации, без указания на документы или основные причины исходного отказа, едва ли полезно и потенциально может привести к еще большей путанице.
Tom Pace

все еще появляется ошибка Ошибка: не удалось найти com.google.android.gms: play-services-maps: 9.2.0. Требуется: app_1: app: unspecified <a href="searchInBuildFiles"> Искать в файлах build.gradle </a>
Рохит Мандивал,

27

Требуется: последние версии Android Studio и Google Play Services.

Вы можете добавить плагин в свой проект, обновив файлы build.gradle верхнего уровня и build.gradle на уровне приложения следующим образом:

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

подобно

 // 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.0'
        classpath 'com.google.gms:google-services:3.0.0'

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

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

Теперь вам нужно добавить зависимость для сервисов Google Play. Внутри вашего приложения build.gradle добавьте:

compile 'com.google.android.gms:play-services:9.6.1'

в заключение

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.2"

    defaultConfig {
        applicationId "// set Yours"
        minSdkVersion 15
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"


    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'LICENSE.txt'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
  compile 'com.google.android.gms:play-services-gcm:9.6.1'
    compile 'com.android.support:appcompat-v7:24.2.0'

}

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

Я получаю сообщение «Не удалось загрузить Google-services.jar (com.google.gms: google-services: 3.0.0)»
Эндрю С.

1
Эта ссылка не дает никаких других советов, кроме того, что вы дали, и ссылка устарела. С тех пор номера версий немного изменились.
Andrew S

@AndrewS предоставьте, пожалуйста, свой build.gradle. Вы можете задать это как вопрос.
IntelliJ Amiya

@AndrewS, пожалуйста, проверьте мой отредактированный ответ. после этогоclean-rebuild-gradle
IntelliJ Amiya

11

GCM использовался rebrandedдля Firebaseобмена сообщениями в облаке (FCM), если вы хотите использовать, com.google.android.gms:play-services:9.0.0прочтите эту статью FCM . Возможно, это сработает, измените build.gradleфайл, чтобы использовать плагин.

buildscript {
  dependencies {
    // Add this line
    classpath 'com.google.gms:google-services:3.0.0'
  }
}

4
Однако я получил эту ошибкуError:Execution failed for task ':app:processDebugGoogleServices'. > Missing api_key/current_key object
Шажил Афзал

7
@ShajeelAfzal решит эту проблему, сгенерировав google-service.json developers.google.com/mobile/add
raditya gumay

Мне пришлось импортировать свой проект в консоль firebase и восстановить файл google-service.json, чтобы он работал на меня. Импортируйте свой проект в firebase, а затем нажмите «Управление». Затем вы можете загрузить новый файл, если вышеуказанное не работает для вас
Paul at stepupsoftware 01

Почему 3.0.0 ? Разве это не старая версия. Я считаю, что мы уже на 9.4.0 .
Игорь Ганапольский

1
@IgorGanapolsky версия 3.0.0 предназначена для плагина gradle, 9.4.0 - для библиотеки
alvinmeimoun

1

Самый простой способ, который я нашел, - использовать последнюю версию для всех.

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
//apply plugin: 'com.google.gms.google-services' //Firebase
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha8'
compile 'com.google.firebase:firebase-auth:10.2.6'
compile 'com.google.android.gms:play-services-auth:10.2.6' //10.2.6
compile 'com.google.firebase:firebase-core:10.2.6' // used for FCM
compile 'com.google.firebase:firebase-messaging:10.2.6' // used for FCM
testCompile 'junit:junit:4.12'
//  apply plugin: 'com.google.gms.google-services'

}

Explaination

apply plugin: 'com.google.gms.google-services' // Добавьте это внизу.

  • Сначала apply plugin: 'com.google.gms.google-services'// Добавьте это внизу.
  • Затем добавьте их в зависимости

    compile 'com.google.firebase:firebase-auth:10.2.6' // делаем так, что это последняя версия.

    compile 'com.google.android.gms:play-services-auth:10.2.6' //10.2.6 Последний

    compile 'com.google.firebase:firebase-core:10.2.6' // используется для FCM

    compile 'com.google.firebase:firebase-messaging:10.2.6' // используется для FCM

Предположим, что у вас есть firebase-auth 10.2.6, последняя версия сегодня 25 мая 2017 г., но одновременно вы используете play-services-auth: 9.0.0 или ниже, чем последняя, ​​тогда они оба не могут установить соединение и показать ты ошибка.

Надеюсь, это помогло.


0

Я решил эту хитрую проблему, изменив строку в Gradle на

compile 'com.google.android.gms:play-services:9.0.0' //or latest version

0

При изменении сервисов воспроизведения на версию выше 10.2.1 мои зависимости начали не разрешаться.

Я обнаружил, что изменение следующего URL-адреса maven решило проблему:

maven { url 'https://raw.githubusercontent.com/onepf/OPF-mvn-repo/master/' }

в

maven { url 'https://github.com/onepf/OPF-mvn-repo/raw/master/' }

Возможно, изменение URL-адреса позволяет избежать кеширования в gradle или maven, и это разрешает его.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.