Сегодня я начал получать эту ошибку, вчера все работало нормально, не было изменений в версии gradle или firebase
The library com.google.firebase:firebase-iid is being requested by various other libraries at [[17.0.0,17.0.0]], but resolves to 16.2.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
Я видел, что вчера было обновление в плагине google-services, вероятно, причина проблемы.
Как исправить эту проблему?
Проверьте, есть ли у вас в приложении OneSignal. Если да, обратитесь к этому stackoverflow.com/questions/46552044/…
@GeorgySavatkov У меня нет OneSignal в этом проекте
Ну что ж. Тогда вы действительно можете захотеть запустить ./gradlew :app:dependencies и посмотреть, что происходит. Еще один совет: в файле gradle как на уровне приложения, так и на уровне модуля убедитесь, что google() находится на самом верху, а jcenter() - в самом низу раздела repositories. Смешно, иногда помогает
Я исправил аналогичную проблему с это
@egorikem: ./gradlew :app:dependencies не показывает никого, кто ссылается на версию, к которой он относится. configurations.all { resolutionStrategy { force 'com.google.firebase:firebase-iid:17.0.2' } } тоже не работает.
Последняя версия сервисов firebase и Play - stackoverflow.com/a/52696667/3333878. Если это исправление не работает или у вас много зависимостей, и вы не можете найти, что вызывает эту проблему, попробуйте прокомментировать / раскомментировать каждую зависимость firebase или play services и синхронизировать gradle одну за другой. Пока вы не найдете пакет, вызывающий проблему, вы можете обновить эту версию пакета.
Я была такая же проблема. Быстрое решение - отключить строгую проверку версии, которая вызывает эту проблему. Добавлять
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
в самом низу файла build.gradle вашего приложения.
Я предполагаю, что от этого могут быть какие-то плохие побочные эффекты?
Это может показаться опасным, но я перепробовал все ответы на этой странице, кроме этого ничего не работает. Наш проект просто перестал компилироваться на выходных без каких-либо изменений, внесенных нами, и это мешает нам выпустить новый релиз - что еще мы можем сделать ?!
Лучше проверьте (и проголосуйте) за решение @masoudmjm. Это лучше, потому что не нужно отключать какие-либо проверки. Основная проблема может заключаться в том, что вы пропустили обновление других плагинов rnFirebase, которые вы используете (например, обмена сообщениями). Для меня было решено поместить firebase-messaging в 17.5.0, как описано в документации по rnfirebase.
Привет, @Nick (или любой другой, кто мог ответить): при использовании cordova build.gradle создается во время выполнения, вы не можете ничего добавить к нему, единственный вариант - использовать дополнительные сборки. Есть ли способ добавить это правило в build-extras.gradle?
У меня не работает. Я получаю это: No such property: config for class: com.google.gms.googleservices.GoogleServicesPlugin
У меня такая же ошибка сегодня. Я использую react-native-firebase и react-native-push-notification. Запустив ./gradlew :app:dependencies, я увидел, что для react-native-push-notification требуется последняя версия com.google.firebase:firebase-messaging, которая, в свою очередь, требует com.google.firebase:firebase-iid:[17.0.0], что вызывает ошибку.
Я вручную указал более раннюю версию firebase-messaging для react-native-push-notification, как описано здесь. Это устранило проблему для меня:
// in android/build.gradle
ext {
firebaseVersion = '17.1.0' // add this line
// ...
}
Swigget, нужно ли вам установить response-native-firebase, чтобы получать response-native-push-уведомления для работы от FCM?
Если у вас возникла эта проблема, вы можете увидеть много сообщений о том, что вы можете отключить эту проверку. Я не люблю это делать, потому что это скрывает проблему.
Через некоторое время я наконец понял, что это говорит о том, что какая-то библиотека запрашивает версию, которой у меня не было. Итак, я добавил это в build / app / build.gradle, и он построил
implementation "com.google.firebase:firebase-iid:17.0.2"
Просто используйте версию, к которой он разрешает, в вашем случае 16.2.0.
Спасибо. Это было выходом из моей ситуации. Произошло обновление с com.google.firebase: firebase-messaging: 21.1.0 на: 22.0.0. Раньше этого заявления о реализации было достаточно. Но теперь мне пришлось добавить com.google.firebase: firebase-iid: 21.1.0. Не знаю почему, но с ним проект снова строится без ошибок. К сожалению, сообщение об ошибке «Повторяющийся класс» очень сбивает с толку!
Я была такая же проблема. Я решил это, обновив обмен сообщениями firebase до последней версии (на данный момент).
implementation 'com.google.firebase:firebase-messaging:17.0.0'
к
implementation 'com.google.firebase:firebase-messaging:17.3.4'
и это разрешено (без побочного эффекта)
То же самое, что я пробовал, и это сработало. За это следует проголосовать, так как лучший на данный момент ответ рекомендует что-то, что в дальнейшем может вызвать другие побочные эффекты.
Сработало у меня, пришлось обновиться до implementation 'com.google.firebase:firebase-messaging:17.6.0'
Это правильное решение. Если вы обновляете rnfirebase, не забывайте также обновлять все используемые компоненты firebase !!! Для этого проверьте раздел «Установить» каждого подключаемого модуля rnFirebase, который вы используете.
Это правильный ответ. Пожалуйста, не отключайте любую проверку
Мне пришлось обновить это в project.properties, потому что build.gradle продолжал сбрасывать
Для меня отключение проверки версии не решило проблему. Я исключил модуль firebase-iid из библиотеки обмена сообщениями firebase и добавил его отдельно.
implementation ("com.google.firebase:firebase-messaging:17.3.4"){
exclude group: 'com.google.firebase', module: 'firebase-iid'
}
implementation 'com.google.firebase:firebase-iid:17.0.3'
У меня была аналогичная ошибка с com.google.firebase: firebase-iid, используя эти зависимости firebase:
после добавления
это ушло.
Большое спасибо. Ни одно из вышеперечисленных решений не помогло мне. Но твое сработало как шарм
Для меня это был файл build.gradle в node_modules / @ aws-ampify / pushnotification (то же самое относится и к файлу build.gradle в response-native-push-notification)
измените номера версий пакетов firebase, чтобы они соответствовали тому, что у вас есть в вашем собственном файле app / build.gradle.
Для меня это было
compile 'com.google.firebase:firebase-messaging:17.6.0'
compile 'com.google.firebase:firebase-core:16.0.8'
для меня работала реализация com.google.firebase: firebase-core: 16.0.8
У меня это сработало с googlePlayServicesVersion = "17.0.2"
Если обновление всех библиотек com.google.firebase не решает проблему, попробуйте обновить зависимость плагина служб Google на com.google.gms:google-services.
добавить последнюю версию платформы cordova-android (v8.0.0)
добавь мою вилку этого плагина
добавить плагин для включения AndroidX в проект
добавить плагин для исправления существующего источника плагина
Это 100% работает
Что делать, если у нас есть Ionic 3? У меня не получилось заставить firebasex работать на ionic 3
Только для пользователей Android Studio
Я была такая же проблема. и это добавляется после применить плагин: 'com.google.gms.google-services' com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
в самом низу вашего файла приложения build.gradle, и моя проблема была решена
apply plugin: 'com.google.gms.google-services'
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
У меня была такая же проблема, но я решил ее, обновив все свои зависимости firebase до последних.
// Firebase
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.google.firebase:firebase-auth:18.1.0'
implementation 'com.google.firebase:firebase-messaging:19.0.1'
implementation 'com.firebaseui:firebase-ui-firestore:5.0.0'
implementation 'com.firebaseui:firebase-ui-storage:5.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.3.0-alpha01'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0-alpha01'
У меня была аналогичная проблема, но с сообщением об ошибке;
Dependency failing: com.google.firebase:firebase-messaging:17.0.0 -> com.google.firebase:firebase-iid@[16.0.0], but fire base-iid version was 19.0.0.
и решил это, используя следующие версии на уровне приложения build.gradle;
// Google Firebase
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.google.firebase:firebase-messaging:19.0.1'
У меня была аналогичная проблема, и я просто изменил com.google.firebase-messaging на версию 19.0.0 и работал нормально.
У меня такая же проблема. Проблема решена путем обновления последней версии обмена сообщениями firebase с https://firebase.google.com/support/release-notes/android
Из
реализация 'com.google.firebase: firebase-messaging: 19.0.0'
к
реализация 'com.google.firebase: firebase-messaging: 19.0.1'
Я не знаю, почему внезапно возникла ошибка сборки. Это кажется странным, но когда я обновил версию обмена сообщениями firebase, проблема решена.
У меня такая же проблема при интеграции firebase-analytics.
Исходный код:
implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-analytics:17.0.0'
Решено по коду:
implementation 'com.google.firebase:firebase-core:16.0.4 '
implementation 'com.google.firebase:firebase-analytics:16.0.0'
поменять версию 'firebase-analytics' на тот же уровень с 'firebase-core'
Это решило мою проблему. Так что вы можете попробовать. Добавлять
googleServices { disableVersionCheck = true }
в app \ build.gradle
Какая у этого обратная сторона?
Ну, я ничего не заметил, но, безусловно, это означает, что зависимости, которые не будут работать на основе некоторых устаревших версий, не будут обнаружены gradle, поскольку он больше не проверяет версию. Но поскольку мы указываем, что Googleservices не должен быть слишком большим компромиссом.
Увеличение версии firebase-messaging в основном правильное, но на всякий случай, если люди увидят это в будущем, я рекомендую посмотреть Примечания к текущему выпуску Android, чтобы поддерживать все ваши библиотеки firebase в актуальном состоянии.
Проблема в том, что если вы реализуете одну библиотеку, которая требует запуска других библиотек Firebase, и добавляете вторую с теми же зависимостями, но в более поздних версиях, вы теряете совместимость.
В настоящее время Google улучшил много, чтобы не выпускать ломающиеся или несовместимые версии новых библиотек. Используйте последнюю версию каждого из них, и все будет в порядке.
Я обновил свою версию обмена сообщениями firebase, и это решило мою проблему.
Перед
implementation 'com.google.firebase:firebase-messaging:17.6.0'
обновлено
implementation 'com.google.firebase:firebase-messaging:20.0.1'
Не делай этого. У меня было много проблем с этим.
Пока я настраивал клиент Android FCM из помощника Android Studio, и он каким-то образом добавлял только некоторые старые версии fcm в мой файл gradle, я копирую вставленную точную последнюю версию с самого веб-сайта разработчиков Android, затем ошибка исчезла сама по себе . Надеюсь, это поможет кому-то столкнуться с подобной проблемой.
Думаю, я опоздал сюда, чтобы ответить на этот вопрос, но, возможно, это решение решит чью-то проблему.
В build.gradle обновление com.google.gms:google-services:4.0.0 до com.google.gms:google-services:4.3.3 решило мою проблему.
Обновите все версии реализации firebase и файл build.gradle вашего проекта до последней версии google-services.