Google Play Services 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. Иначе, версия 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"
 herrmartell01 июл. 2016 г., 16:47
@mbonnin Я закончил тем же. Но наверняка хотел бы знать, что здесь происходит. Еще не повезло найти ответ.
 mbonnin07 июл. 2016 г., 19:42
это работает, если я применяю плагин в конце файла build.gradle, как говорит Густема ниже
 mbonnin01 июл. 2016 г., 01:08
та же проблема здесь, я откатился на 9.0.0
 Pedro Varela09 янв. 2017 г., 16:39
Читайте, как исправить эту проблему в моем постеВот.
 Massimo02 мар. 2017 г., 11:56
Это не имеет особого смысла ... но работает, написав "применить плагин" в конце build.gradle 😐
 mbonnin07 июл. 2016 г., 19:30
И тогда 9.0.0 имеет эту ошибкуstackoverflow.com/questions/37361651/... и решение, кажется, заключается в обновлении до 9.2.0 .... Что невозможно из-за ошибки здесь :-(

Ответы на вопрос(11)

For Cordova OR Ionic Hybrid App

У меня очень похожая проблема с моей Ionic 1 Cordova Build после интеграции 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

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

 spaceman22 февр. 2018 г., 21:02
Это просто изменило ошибку. Это хорошо, так как я получаю только ту же ошибку, даже с тысячами пробных решений.

Решение Gustavomcls по изменению версии com.google. * На ту же версию мне помогло.

Я изменяю обе зависимости на 9.2.1 в buid.gradle (Модуль: приложение)

compile 'com.google.firebase:firebase-ads:9.2.1'
compile 'com.google.android.gms:play-services:9.2.1'
 Sam Bellerose12 нояб. 2016 г., 15:11
У меня была эта проблема также из-за firebase, но мне не нравится, когда это решение понижает версию firebase до 9.2.1

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

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

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

 Bevor04 июн. 2017 г., 17:02
Почему вы повторяете ответы, которые были даны полгода назад?

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

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

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

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

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

Синхронизируйте ваш проект (Ctrl + Alt + V) и Build Again.

Это код файла 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'

если у вас также есть Firebase, сделайте их той же версии, что и в сообщении об ошибке.

Решение Вопроса

У вас есть линия

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

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

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

 Jimit Patel06 нояб. 2017 г., 09:59
Это возмутительно ... Но это сработало: D: D Об этом следует сообщить в Google
 Pratima14 мар. 2017 г., 07:40
Добавление плагина внизу разрешило конфликт версий.
 herrmartell07 июл. 2016 г., 19:56
Я не уверен, почему в первый раз я попробовал, это не сработало. Просто попробовал еще раз из-за комментария @mbonnin, и теперь он работает. Спасибо.
 viper04 мая 2017 г., 10:18
Спасибо, это сработало для меня. Интересно, почему мы должны поместить эту строку кода внизу?
 SHA2NK01 окт. 2016 г., 06:30
Я добавил эту строку в начале файла, но она работала после того, как поместил ее внизу.
 herrmartell05 июл. 2016 г., 22:56
Это не проблема. И согласно официальной документации, все плагины должны применяться сверху.developer.android.com/studio/build/index.html
 herrmartell07 июл. 2016 г., 01:05
Я стою исправлено. В любом случае, это не решит проблему.
 Jithu P.S18 авг. 2017 г., 11:34
Эта строка является важной строкой :: :) внизу вашего файла build.gradle?
 Richard28 окт. 2016 г., 17:28
После добавления строки я получаю следующее: * Что пошло не так: возникла проблема при оценке корневого проекта 'android'. > Плагин с идентификатором com.google.gms.google-services не найден.
 Kuldeep Singh29 апр. 2018 г., 09:37
Это правда, плагин "apply plugin: 'com.google.gms.google-services" должен находиться внизу файла, он работает для меня,
 Luke19 июл. 2017 г., 22:43
Это странно. Любые возможные объяснения?
 Fernando Bonet01 авг. 2017 г., 17:13
Сумасшедшие вещи !!! Как вы сказали, я просто переместил «применить плагин» сверху вниз, и это сработало ...
 Gusthema07 июл. 2016 г., 00:18
Это не так, плагин gms должен быть в нижней части файла, как вы можете увидеть здесь на документах для gms:developers.google.com/android/guides/google-services-plugin

Добавьте эту строку в нижней части Gradle.

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

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

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

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

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

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

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

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

 herrmartell01 июл. 2016 г., 16:52
Ах, пойди разберись. Поскольку в документации не указано иное, я предполагал, что новейшие версии будут выпущены с необходимым плагином. AFAIK, вам нужен плагин, чтобы заставить работать GCM, поэтому я предполагаю, что это решение для проверки обновлений вручную.
 Lutaaya Huzaifah Idris07 окт. 2016 г., 14:57
Наверняка @yaneq google docs отстой, получил ту же проблему прямо сейчас

Ваш ответ на вопрос