Android

Manifest merger failed : Attribute application@appComponentFactory cant solve this

Ошибка слияния манифеста: приложение атрибута @AppComponentFactory не может решить эту проблему

я новичок в Android, и у меня есть приложение, которое при сборке моего проекта выдает эту ошибку ::


ОШИБКА: Ошибка слияния манифеста: приложение атрибута@AppComponentFactory значение =(androidx.core.app.CoreComponentFactory) из [androidx.core: core: 1.0.0] AndroidManifest.xml:22:18-86 также присутствует в [com.android.support:support-compat: 28.0.0] AndroidManifest.xml:22:18-91 значение=(android.support.v4.app .CoreComponentFactory). Предложение: добавьте 'tools: replace ="android: AppComponentFactory"' к элементу в AndroidManifest.xml: 9:5-44: 19 для переопределения.


Моя сборка Gradle ::

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

android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
applicationId "maa.tic_tac_to"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.google.firebase:firebase-messaging:19.0.1'
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
// implementation 'com.android.support:appcompat-v7:24.2.1'
implementation 'com.android.support:appcompat-v7:28.0.0'
// implementation 'com.android.support:support-v4:28.+'
// implementation ('com.theartofdev.edmodo:android-image-cropper:2.4.+'){

// exclude group: 'com.android.support'
//}
// implementation 'com.google.android.material:material:1.0.0-alpha08'

implementation 'com.android.support.constraint:constraint-layout:2.0.0-beta2'
// implementation 'com.androidx.constraintlayout.widget:ConstraintLayout:2.0.0-beta2'
testImplementation 'junit:junit:4.12'
}

и manifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="maa.tic_tac_to">

<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />

<application
android:allowBackup="true"
android:icon="@drawable/tic_tac_toe"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">


<activity android:name=".MainActivity"></activity>

<receiver
android:name=".MySMSReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>

<activity android:name=".FakeActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".LogInActivity"></activity>


<service
android:name=".MyFirebaseMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
</application>

</manifest>

я тестирую каждое решение в stackoverflow и поиске Google, но кто-нибудь может мне помочь.
кто-нибудь может помочь устранить эту ошибку ?!?!?!?

Переведено автоматически
Ответ 1

Вы используете

implementation 'com.google.firebase:firebase-messaging:19.0.1'

Firebase перенесена на AndroidX в последней версии.
Это означает, что вы используете как библиотеки поддержки, так и библиотеки androidx.

Вы можете:


  • перенесите на androidx, как описано ниже

  • понизьте уровень ваших зависимостей firebase (но это не реальное решение, потому что рано или поздно вам придется мигрировать)

Вы можете ознакомиться с официальными примечаниями к выпуску:


Предупреждение: Этот выпуск является ОСНОВНЫМ обновлением версии и критическим изменением. Последнее обновление сервисов Google Play и Firebase включает следующие изменения:


Переход с библиотек поддержки Android на библиотеки Jetpack (AndroidX). Библиотеки не будут работать, если вы не внесете следующие изменения в свое приложение:


  • Обновите com.android.tools.build:gradle до версии v3.2.1 или более поздней.

  • Обновите compileSdkVersion до 28 или более поздней версии.

  • Обновите свое приложение для использования Jetpack (AndroidX); следуйте инструкциям в разделе Миграция на AndroidX.

java android firebase