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.гуглить.андроид.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"

    ...
}

кто-нибудь имеет ту же проблему/исправлена та же проблема?

спасибо.

EDIT

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

Для справки, это как мое приложение/сборка.файл 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"
11   176  

11 ответов:

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

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

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

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

просто вставляем эту строку в нижней части вашего приложения-модуля (не корень проекта) .

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

затем перестройте проект.

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

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

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

после изменения сборки.gradle (модуль: приложение) с кодом ниже сделать это:

  1. поместите имя пакета в строку со словами ид_приложения "ком.YOUR_PACKAGE_HERE"

  2. синхронизировать проект (Ctrl+alt+v) и построить снова.

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

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'

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

решение Gustavomcls для изменения com.гуглить.* версия к той же версии работал для меня .

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

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

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

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

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

для Кордовы или ионного гибридного приложения

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

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

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

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

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

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

применить плагин: 'com.гуглить.СБМ.google-services'

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

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

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

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