Android Gradle: все библиотеки gms / firebase должны использовать одну и ту же спецификацию версий (смешивание версий может привести к сбоям во время выполнения) - PullRequest
0 голосов
/ 11 февраля 2019

Я пытаюсь интегрировать Firebase Performance SDK.Этот конфликт возникает в этой строке (отмечена красной линией в разделе Analysis) и вылетает после запуска приложения:

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

Все библиотеки gms / firebase должны использовать одну и ту же спецификацию версии (смешиваниеверсии могут привести к сбоям во время выполнения).Найдено версии 17.1.0, 17.0.5, 17.0.3, 17.0.1, 16.3.0, 16.2.3, 16.2.1, 16.1.0, 16.0.7, 16.0.3, 16.0.1, 16.0.0.

Я искал и пробовал связанные вопросы / ответы этого похожего заголовка, но никто не может работать.

Зависимости перечислены ниже.До этого я использовал все версии 11.8.0, работающие хорошо.Performance SDK хочет, чтобы я использовал firebase-perf: 16.2.3, и он запустил эту проблему.Несмотря на то, что я изменяю их все до 16.xx, это все еще не может быть исправлено.Интересно, нужны ли им все они в одной и той же подрывной деятельности?Но этого нельзя сделать, потому что я пробовал, у многих из них нет большого количества подрывных действий.Например, если используются все версии 16.0.0, некоторые из них будут отображаться как «Не удалось разрешить: ...».

build.gradle (Модуль: приложение)

compile 'com.google.android.gms:play-services-ads:16.0.0'
compile 'com.google.firebase:firebase-core:16.0.7'
compile 'com.google.firebase:firebase-ads:16.0.1'
compile 'com.google.firebase:firebase-auth:16.1.0'
compile 'com.google.firebase:firebase-crash:16.2.1'
implementation 'com.google.firebase:firebase-config:16.3.0'
implementation 'com.google.firebase:firebase-core:16.0.7'
implementation 'com.google.firebase:firebase-perf:16.2.3'

build.gradle (проект: хххх)

    dependencies {
    classpath 'com.android.tools.build:gradle:3.0.1'
    classpath 'com.google.gms:google-services:4.0.2'
    classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1'
    classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4'
    classpath 'io.fabric.tools:gradle:1.25.4'   //for crashlytics
    classpath 'com.google.firebase:firebase-plugins:1.1.5'  //for performance
}

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

После многочасовых попыток, случается, работает над следующими модификациями.Особенно "(", ")" необходимы для 'com.google.android.gms: play-services-ads: 16.0.0', иначе конфликт не исчезнет!

compile ('com.google.android.gms:play-services-ads:16.0.0')

compile ('com.google.firebase:firebase-core:16.0.7'){exclude group: "com.google.android.gms"}
compile ('com.google.firebase:firebase-ads:16.0.1'){exclude group: "com.google.android.gms"}
compile ('com.google.firebase:firebase-auth:16.1.0'){exclude group: "com.google.android.gms"}
compile ('com.google.firebase:firebase-crash:16.2.1'){exclude group: "com.google.android.gms"}
implementation 'com.google.firebase:firebase-config:16.3.0'
implementation 'com.google.firebase:firebase-core:16.0.7'
implementation 'com.google.firebase:firebase-perf:16.0.0'  //if using 16.2.3, sometime the app crashes as soon as it starts. 
                                                       //Below post reported that some other bug from firebase-perf:16.1.0
                                                         //https://stackoverflow.com/a/51967966/8046317
0 голосов
/ 13 февраля 2019

Если вы используете Android Studio: после открытия файла Gradle вы увидите, что некоторые библиотеки помечены желтым цветом, если навести на них указатель мыши, появится всплывающее окно с последней версией, чтобы вы могли начать сзаменяя их все последней версией.После этого очистка и перестройка проекта могут помочь.

...