Службы Google Play GCM 9.2.0 требуют "обновить" до 9.0.0

Итак, этим утром я начал обновляться до последней версии моих библиотек проектов.

Я пытаюсь обновить GCM до последней версии 9.2.0, но я получаю эту ошибку:

Ошибка: выполнение выполнено для задачи ': app: processDebugGoogleServices'. Исправьте конфликт версии, обновив версию плагина google-services (информация о последней версии доступна в https://bintray.com/android/android-tools/com.google.gms.google-services/) или обновите версию com. google.android.gms до 9.0.0.

Вот как у меня есть код:

dependencies {
    classpath 'com.android.tools.build:gradle:2.1.2'
    classpath 'com.google.gms:google-services:3.0.0'
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}

И затем:

dependencies {
    ...

    compile "com.google.android.gms:play-services-gcm:9.2.0"

    ...
}

Кто-нибудь, имеющий ту же проблему/исправил ту же проблему?

Спасибо.

ИЗМЕНИТЬ

По-видимому, вам нужно применить свой плагин GSM в нижней части файла app/build.gradle. Else, версия 9.2.0 вызовет конфликт в вашем проекте.

Для справки, вот как выглядит мой файл app/build.gradle:

apply plugin: "com.android.application"
apply plugin: "com.neenbedankt.android-apt"

android {
    ...
}

dependencies {
    ...

    // Google Cloud Messaging
    compile "com.google.android.gms:play-services-gcm:9.2.0"

    ...
}

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

Ответ 1

У вас есть строка

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

в нижней части вашего файла build.gradle приложения?

Я видел некоторые ошибки, когда он был сверху, и как он писал здесь, он должен быть внизу.

Ответ 2

Просто поместите эту строку в конец файла вашего приложения-модуля (а не проекта root) gradle.

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

Затем перестройте свой проект.

Ответ 3

У меня была та же проблема, сегодня 2016 - октябрь - 06 Я решил с этим:

Я изменил все зависимости, которые начинались с 9.?.? до 9.6.1 Я скомпилирован с помощью sdk версии 24 и целевой версии 17.

В моем решении есть еще несколько пакетов, потому что я использовал больше вещей, а затем только проверку подлинности.

После изменения вашего build.gradle(Module: app) с помощью кода ниже сделайте это:

  • Поместите свой NAME пакета в строку со словами applicationId "com.YOUR_PACKAGE_HERE"

  • Синхронизируйте свой проект (Ctrl + alt + v) и снова создайте.

Это код файла buid.gradle(Module: app), который работал у меня:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.3"
    defaultConfig {
        applicationId "com.YOUR_PACKAGE_HERE"
        minSdkVersion 24
        targetSdkVersion 17
        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.google.firebase:firebase-core:9.6.1'
    compile 'com.google.firebase:firebase-database:9.6.1'

    compile 'com.android.support:appcompat-v7:24.2.1'
    compile 'com.android.support:design:24.2.1'

    compile 'com.google.firebase:firebase-crash:9.6.1'
    testCompile 'junit:junit:4.12'

    compile 'com.google.firebase:firebase-messaging:9.6.1'

    compile 'com.google.firebase:firebase-ads:9.6.1'


    compile 'com.google.firebase:firebase-auth:9.6.1'


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

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

Ответ 4

То же самое было с предыдущими версиями. Это означает, что новые версии библиотеки com.google.android.gms всегда выпускаются перед плагином, и невозможно использовать новую версию, поскольку она несовместима со старым плагином. Я не знаю, требуется ли плагин (google docs sucks). Я помню времена, когда этого не было. Единственный способ - ждать новой версии плагина, или вы можете попытаться удалить зависимостей плагина, но, как я уже сказал, я не уверен, что gcm будет работать без него. Я знаю, что главной особенностью версии 9.2.0 является новый API-интерфейс Awareness https://inthecheesefactory.com/blog/google-awareness-api-in-action/en, если он вам не нужен, вы можете использовать 9.0.0 без проблем.

Ответ 5

Решение Gustavomcls для изменения com.google. * версия для той же версии работала для меня.

Я изменяю обе зависимости до 9.2.1 в buid.gradle(Module: app)

compile 'com.google.firebase:firebase-ads:9.2.1'
compile 'com.google.android.gms:play-services:9.2.1'

Ответ 6

откройте app/build.gradle из вашего приложения-модуля и перепишите ниже строки после блока зависимостей. Это позволяет плагину определить, какую версию служб Play вы используете.

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

Я получил эту идею от здесь. В этом уроке второй момент говорит о том, что над плагином строка находится внизу вашего файла app/build.gradle, чтобы не вводить коллизий зависимости. Надеюсь, это поможет вам.

Ответ 7

если вы также включили Firebase, сделайте их той же версии, что и ошибка.

Ответ 8

Для Кордова ИЛИ Ионного гибридного приложения

У меня очень похожая проблема с моей сборкой Ionic 1 Cordova после интеграции Firebase Cloud Messaging (FCM)

Я исправил эту проблему следующими шагами

Итак, одно исправление будет: внутри платформ /android открыть project.properties (его файл), у вас будет что-то вроде этого

cordova.system.library.1=com.google.android.gms:play-services-ads:+
cordova.system.library.2=com.google.firebase:firebase-core:+
cordova.system.library.3=com.google.firebase:firebase-messaging:+

Замените

+

Подпишите номер своей целевой версии - например, следующий

cordova.system.library.1=com.google.android.gms:play-services-ads:9.0.0
cordova.system.library.2=com.google.firebase:firebase-core:9.0.0
cordova.system.library.3=com.google.firebase:firebase-messaging:9.0.0

Сохраните файл

Затем выполните сборку, используя

 ionic cordova run android

Я надеюсь, что это сработает для всех

Ответ 9

У меня не было проблем с этим, пока я не попытался использовать службы определения местоположения, после чего мне пришлось поместить apply plugin: 'com.google.gms.google-services' в нижней части файла, а не в верхнюю часть. Причина в том, что, когда у вас есть это наверху, возникают проблемы с столкновением, и, поставив его внизу, вы избегаете этой проблемы.

Ответ 10

Ваша цель SDK может быть выше, чем SDK устройства, измените это. Например, на вашем устройстве работает API 23, но ваша цель SDK равна 25. Измените значение от 25 до 23.

Ответ 11

Добавьте эту строку внизу gradle.

применить плагин: 'com.google.gms.google-services'

потому что он сверху не работает. Я столкнулся с аналогичной проблемой.