Произошла ошибка при вставке кодов AdMob или Firebase в Gradle - PullRequest
0 голосов
/ 22 июня 2019

У меня есть Android Studio Project, когда я вставляю коды AdMob или Firebase в Gradle, вижу эту ошибку

Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:8:1-25:15 to override.

Это мой манифест манифест

Это градл

    dependencies {
    classpath 'com.android.tools.build:gradle:3.4.1'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

    classpath 'com.google.gms:google-services:4.2.0'
}

Ответы [ 2 ]

0 голосов
/ 23 июня 2019

Новые библиотеки Firebase и новые Библиотеки Google Play требуют androidx .Поскольку вы используете эти библиотеки, вы используете как библиотеки поддержки, так и библиотеки androidx.

Проверьте примечание:

Этот выпуск представляет собой обновление версии MAJOR ивключает в себя критические изменения. В этом выпуске библиотеки переносятся из библиотек поддержки Android в библиотеки Jetpack (AndroidX). Обновленные библиотеки не будут работать, если вы не внесете следующие изменения в свое приложение:

  • Обновление com.android.tools.build:gradle до v3.2.1 или более поздней версии.
  • Обновление compileSdkVersion до 28 или более поздней версии.
  • Обновление приложения для использования Jetpack(AndroidX);следуйте инструкциям в Миграция на AndroidX .
0 голосов
/ 22 июня 2019

работает после добавления этого кода в <application>

    tools:replace="android:appComponentFactory"
    android:appComponentFactory="androidx"
...