wake-up-neo.com

Android X: tools: Ersetzen angegeben in Zeile: für Attribut, aber kein neuer Wert angegeben

Ich habe viele Lösungen auf dieser Website ausprobiert, aber das Problem ist immer noch nicht gelöst. Das Problem ist auf die Android X-Bibliothek zurückzuführen. Als ich Android X hinzufügte, wurde dieses Problem behoben, aber es eröffnete ein neues Problem. Wie kann das Problem behoben werden?

Früher kam dieser Fehler:

Manifest merger failed : Attribute [email protected] 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:19:5-142:19 to override.

Nachdem ich tools:replace="Android:appComponentFactory" hinzugefügt habe, ist folgender Fehler aufgetreten:

 Java.lang.RuntimeException: Manifest merger failed with multiple errors, see logs
at com.Android.builder.core.AndroidBuilder.mergeManifestsForApplication(AndroidBuilder.Java:540)    
at com.Android.build.gradle.tasks.MergeManifests.doFullTaskAction(MergeManifests.Java:173)

Zusammenführungsfehler (in Android Manifest):

Fehler: tools: replace angegeben in Zeile: 2 für Attribut Android: appComponentFactory, aber kein neuer Wert angegeben App-Hauptmanifest (diese Datei), Zeile 1

Manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest
    package="com.example"
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools"
    tools:replace="allowBackup, Android:appComponentFactory"
    Android:allowBackup="false">

    ...

    <application
        Android:name="com.example"
        Android:icon="@mipmap/icon"
        Android:debuggable="true"
        Android:hardwareAccelerated="false"
        Android:largeHeap="true"
        Android:supportsRtl="true"
        Android:theme="@style/AppTheme"
        Android:allowBackup="false"
        tools:ignore="GoogleAppIndexingWarning,HardcodedDebugMode">
       ...
41
Malwinder Singh

Ich denke, Sie migrieren auf AndroidX-Bibliotheken.

Fügen Sie die folgenden Zeilen zur Datei gradle.properties hinzu

Android.useAndroidX=true
Android.enableJetifier=true

Entfernen Sie tools:replace="Android:appComponentFactory" aus dem Manifest.

Ersetzen Sie Android.support.v7.app.AppCompatActivity durch androidx.appcompat.app.AppCompatActivity

Migration auf AndroidX

55
Akshay

Sie können versuchen, Folgendes hinzuzufügen:

Android:appComponentFactory="Android.support.v4.app.CoreComponentFactory"

Zum Tag <application > in Ihrem Manifest.

25
Gabriel Aguirre

Ich habe den gleichen Fehler in meinem Projekt, ich habe ihn behoben. Sie können es versuchen

Android Studio> Refactor> Auf AndroidX migrieren

enter image description here

6
shailesh

In meinem Fall hatte ich die Abhängigkeit von Firebase und Play Services aktualisiert, was zu diesem Problem führte.

Die Abhängigkeitsaktualisierungen wurden zurückgesetzt und der Fehler verschwand

Scheint, dass die neuesten Firebase- und Play Service-Abhängigkeiten mit androidx kompatibel sind.

4
codepeaker

In meinem Fall hatte ich ein Problem mit der von mir verwendeten Firebase-Version. Ein Downgrade der Firebase-Version hat mir geholfen.

implementierung 'com.crashlytics.sdk.Android:crashlytics:2.10.1' Implementierung 'com.google.firebase: firebase-core: 16.0.6'

2
rishabh gupta

Dies ist häufig passiert, weil Sie gleichzeitig Androidx-Bibliotheken und nterstützungsbibliotheken verwendet haben. Einige Bibliotheken von Drittanbietern enthalten möglicherweise Unterstützungsbibliotheken und andere Bibliotheken von Drittanbietern enthalten möglicherweise Androidx-Bibliotheken. Dies kann ebenfalls zu diesem Problem führen. Wenn Sie eine gradle-Umgebung auf Ihrem PC haben, versuchen Sie den Befehl "gradlew: app: dependencies" im Terminal von Android Studio. Mit diesem Befehl werden alle Bibliotheken einschließlich der Bibliotheken von Drittanbietern Ihres Projekts aufgelistet und es wird angezeigt, welche Bibliothek vorhanden ist oder Framework verwendet Androidx-Bibliotheken und welche nicht. Versuchen Sie dann, alte Bibliotheken, die Support-Bibliotheken verwenden, zu aktualisieren, und dieses Problem sollte verschwinden.

1
komaki