it-swarm.com.de

Manifest-Zusammenführung fehlgeschlagen: using-sdk: minSdkVersion 14

Seit dem Herunterladen des neuesten SDK und der Installation von Android Studio kann mein Projekt nicht erstellt werden. Ich erhalte folgende Nachricht:

Error:Gradle: Execution failed for task ':SampleProject:processProdDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version L declared in library com.Android.support:support-v4:21.0.0-rc1
226
loeschg

Hinweis: Dies wurde aktualisiert, um die Version von API 21, Lollipop, wiederzugeben. Laden Sie das neueste SDK herunter.

In einem meiner Module hatte ich folgendes in build.gradle:

dependencies {
    compile 'com.Android.support:support-v4:+'
}

Ändern Sie dies in

dependencies {
    // do not use dynamic updating.
    compile 'com.Android.support:support-v4:21.0.0' 
}

das Problem behoben. 

Stellen Sie sicher, dass Sie com.Android.support:support-v4:+ oder andere Unterstützungsbibliotheken (v7, v13, appcompat usw.) nicht überall in Ihrem Projekt verwenden.

Ich gehe davon aus, dass das Problem v4:+ ist veröffentlichungskandidat (21.0.0-rc1) neueste L-Version, für die offensichtlich das L SDK erforderlich ist. 

Bearbeiten:

Wenn Sie die neuen Ansichten (CardView, RecyclerView und Palette) verwenden müssen, sollte Folgendes funktionieren:

compile "com.Android.support:cardview-v7:21.0.0"
compile "com.Android.support:recyclerview-v7:21.0.0"
compile "com.Android.support:palette-v7:21.0.0"

(Dank an EddieRingle unter/androiddev - http://www.reddit.com/r/androiddev/comments/297xli/howto_use_the_v21_support_libs_on_older_versions/ )

Ein weiteres Edit

Achten Sie darauf, @ murtuzas Antwort unten zu appcompat-v7 zu lesen und zu bestätigen, wenn es hilft!

311
loeschg

Falls Sie die appcompat-v7-Bibliothek importieren, stellen Sie sicher, dass Sie eine Versionsnummer am Ende der Bibliothek wie folgt markieren:

compile 'com.Android.support:support-v4:19.+'
compile 'com.Android.support:appcompat-v7:19.+'

Nachdem ich lediglich die Version v4 von support-v4 geändert hatte, erhielt ich immer noch den Fehler: 

Manifest-Zusammenführung fehlgeschlagen: using-sdk: minSdkVersion 15 kann nicht kleiner als Version L sein, die in der Bibliothek com.Android.support:support-v4:21.0.0-rc1 deklariert ist

Es war ein wenig verwirrend, da v4 anscheinend immer noch das Problem ist, aber durch die Einschränkung der Version von appcompat v7 wurde das Problem behoben.

69
murtuza

Lösung 1:

Ändern Sie die Verwendung von sdk in <uses-sdk tools:node="replace" /> und fügen Sie xmlns:tools="http://schemas.Android.com/tools"in AndroidManifest.xml hinzu.

 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:tools="http://schemas.Android.com/tools"
    package="com.demo.Android"
    Android:versionCode="16"
    Android:versionName="3.3.1">
    .
    .
    <uses-sdk tools:node="replace" />
    .
    .
</manifest>

Stellen Sie sicher, dass Sie Gradle 0.11 und höher verwenden, um die Manifest-Fusion zu verwenden.

Lösung 2:

  • Ändern Sie compile 'com.Android.support:support-v4:+' in compile 'com.Android.support:support-v4:20.+' in build.gradle. Dies verhindert, dass Gradle v4:21.0.0 verwendet, für den Version L erforderlich ist.

  • Wenn jedoch Ihre externen Abhängigkeiten dasselbe verwenden. Sie werden wahrscheinlich warten müssen, bis sie dasselbe Update erhalten.

Lösung 3:

  • Entfernen/Kommentar <version>21.0.0-rc1</version> in Ihrer Datei <Android-sdk>/extras/Android/m2repository/com/Android/support-v4/maven-metadata.xml

  • Wiederholen Sie dasselbe für support-v7

54
Gaurav Arora
<uses-sdk tools:node="replace" />

Funktioniert nicht mehr.

uses-sdk in ändern 

<uses-sdk tools:overrideLibrary="com.packagename.of.libary.with.conflict" />

und hinzufügen
xmlns:tools="http://schemas.Android.com/tools" in der Datei AndroidManifest.xml

20
userM1433372

Das Problem tritt immer noch bei transitiven Abhängigkeiten auf. Gradle bietet eine Möglichkeit, die Verwendung einer bestimmten Version einer Abhängigkeit zu erzwingen.

Sie können beispielsweise Folgendes hinzufügen:

configurations.all {
    resolutionStrategy {
        force 'com.Android.support:support-v4:20.+'
        force 'com.Android.support:appcompat-v7:20.+'
    }
}

zu deinem build.gradle.

Weitere Informationen zu Gradle-Auflösungsstrategien finden Sie in diesem Handbuch http://www.gradle.org/docs/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html

Ich habe dies beim Lesen der entsprechenden Ausgabe gefunden, die ich verlinken werde hier

11
koesclem

In der build.gradle-Datei war es standardmäßig "com.Android.support:support-v4:+", so dass beim Erstellen des Gradle-Projekts "com.Android.support:support-v4:21.0.0-rc1" berücksichtigt werden sollte wegen der letzten L Entwickler-Preview-Version.

Nehmen Sie in der folgenden Zeile Änderungen vor, um das Problem zu beheben

compile 'com.Android.support:support-v4:+' 

zu

compile 'com.Android.support:support-v4:20.+'

Wenn Sie die v7-appcompat-Unterstützungsbibliothek verwenden, nehmen Sie die Änderung in gleichermaßen vor

compile 'com.Android.support:appcompat-v7:+'

zu 

compile 'com.Android.support:appcompat-v7:20.+'.
8
Bhargav Jhaveri

Zusätzlich zu den richtigen Antworten kann das Problem weiterhin durch Verschachtelung von Bibliotheken auftreten. In diesem Fall versuchen Sie es wie folgt:

compile 'com.Android.support:support-v4:20.+'
compile ('com.github.chrisbanes.actionbarpulltorefresh:extra-abs:+') { // example
    exclude group: 'com.Android.support', module:'support-v4'
    exclude group: 'com.Android.support', module:'appcompat-v7'
}
8

für Benutzer, die Hybrid-Apps mit der Cordova-CLI erstellen, hilft dieser Befehl:

cordova build Android -- --minSdkVersion=15

ja, es werden doppelte doppelte Striche verwendet, wie Sie es gesehen haben.

7
ProllyGeek

Für Leute, die dieses Problem in der Android Studio Beta hatten, konnte die akzeptierte Antwort mein Problem nicht lösen. Beim Importieren eines Projekts, das von GitHub heruntergeladen wurde, hatte ich in meiner build.gradle -Datei der folgenden Anwendung den folgenden Fehler:

 dependencies {
    compile 'com.Android.support:support-v4:+'
}

In meinem externen Bibliotheksordner habe ich diesen Ordner:

support-v4-21.0.0-rc1 //note the 21

Ich habe das obige Problem gelöst, indem ich die Abhängigkeit geändert habe in:

dependencies {
compile 'com.Android.support:support-v4:20.+' //20 used less than available strange but works
}

Hinweis: Möglicherweise müssen Sie für einige Bibliotheken und Projekte auch eine niedrigere als die derzeit in Android Studio verfügbare API-Stufe herunterladen, damit dies ordnungsgemäß funktioniert.

6

Ich hatte auch das gleiche Problem und die folgenden Änderungen halfen mir:

von:

dependencies {
    compile 'com.Android.support:support-v4:+'

zu:

dependencies {
 compile 'com.Android.support:support-v4:20.0.0'
}
6
min2bro

Ich habe das Problem durch Editieren der Zeile in build.gradle gelöst und es funktioniert! :-)

version hinzufügen 20. + '

Von

 dependencies {
        compile 'com.Android.support:appcompat-v7:+'
    }

Zu

dependencies {
    compile 'com.Android.support:appcompat-v7:20.+'
}
5
compile('com.Android.support:support-v4:19.1.0'){
    force = true
}

Hat mir geholfen, aus hier

5
Lina Shyshova

Ich mache alle Lösungen hier ohne Ergebnis, also schaue ich an einem anderen Ort und ich habe einen Weg gefunden, die IDE auszuliefern. Sie müssen also eine Zeile ins Mainfest setzen, damit der Gradle eine andere verwendet, die eine Sie setzen auf build.gradle die Zeile ist:

<uses-sdk tools:node="replace" />

einfach nur, und es funktioniert.

Ich hoffe, es hilft.

Sie müssen alle Unterstützungen und Appcompat-Bibliotheken mit Version 19 + konfigurieren

Wenn die Empfehlung, die Support-Bibliothek mit der Version 19 + zu verlassen, nicht funktioniert, können Sie den nächsten Tipp in Ihrer AndroidManifest-Datei ausprobieren.

Fügen Sie zuerst diesen Code hinzu:

xmlns:tools="http://schemas.Android.com/tools"

Und dann auf Anwendungsebene (nicht in Anwendung!) 

<uses-sdk tools:node="replace" />
4
Aracem

Sie müssen aus build.gradle compile 'com.Android.support:support-v13:+' entfernen

3
Ihor Kostenko

Hier ist der neue Bug, der für diesen Btw https://code.google.com/p/Android/issues/detail?id=724 eingereicht wurde

Angenommen, Sie verwenden das Support-Repository, besteht die Problemumgehung darin, die Zeile zu kommentieren oder zu entfernen

21.0.0-rc1 in der lokalen Maven-Repo-Listendatei unter /extras/Android/m2repository/com/Android/support-v4/maven-metadata.xml

3
LemonGentry

In Android Studio 1.1.0: Datei - Projektstruktur - Registerkarten - Wählen Sie Min SDK Version, die höher ist als in Manifest

0
ea_

Ich habe einige Projekte, bei denen ich lieber L.MR1 (SDKv22) anvisiere, und einige Projekte, bei denen ich lieber KK (SDKv19) vorstelle. Ihr Ergebnis kann anders sein, aber das hat für mich funktioniert.

// Targeting L.MR1 (Android 5.1), SDK 22
Android {
    compileSdkVersion 22
    buildToolsVersion "22"

    defaultConfig {
        minSdkVersion 9
        targetSdkVersion 22
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    // google support libraries (22)
    compile 'com.Android.support:support-v4:22.0.0'
    compile 'com.Android.support:appcompat-v7:22.0.0'
    compile 'com.Android.support:cardview-v7:21.0.3'
    compile 'com.Android.support:recyclerview-v7:21.0.3'
}



// Targeting KK (Android 4.4.x), SDK 19
Android {
    compileSdkVersion 19
    buildToolsVersion "19.1"

    defaultConfig {
        minSdkVersion 9
        targetSdkVersion 19
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    // google libraries (19)
    compile 'com.Android.support:support-v4:19.1+'
    compile 'com.Android.support:appcompat-v7:19.1+'
    compile 'com.Android.support:cardview-v7:+'
    compile 'com.Android.support:recyclerview-v7:+'
}
0
AG1

Löschen Sie die Ordner build in Ihrem Projekt und synchronisieren Sie Ihr Gradle-Projekt, um es neu zu erstellen. Wie andere auch in diesem Beitrag gesagt haben - anstatt etwas zu tun:

compile 'com.Android.support:support-v4:19.+'

mach das:

compile 'com.Android.support:support-v4:19.1.0'
0
IgorGanapolsky

Für mich wird das Problem gelöst, indem ich das ändern 

minSdkVersion 14

Verwenden Sie in der Datei build.gladdle die in der Fehlermeldung angegebene

aber das Problem war 

Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 15 declared in library

Also habe ich in der build.gladdle-Datei von 14 auf 15 gewechselt und es funktioniert

versuche es.

Vergessen Sie nicht, dass Sie build.gradle im "app" -Unterordner Ihres Projekts und nicht im Projektordner bearbeiten sollten. Ich habe einen Arbeitstag verloren, als ich versuche, ein Problem mit der Version "L" zu lösen.

0
CoolMind

Vielen Dank @Murtuza. Ihre Antwort hat mir geholfen, mein Problem aber in meinem Fall zu lösen 

compile 'com.Android.support:support-v13:19.+ auch zusammen mit 

compile 'com.Android.support:support-v4:19.+' compile 'com.Android.support:appcompat-v7:19.+'

von compile 'com.Android.support:support-v4:+' compile 'com.Android.support:support-v7:+' compile 'com.Android.support:support-v13:+' Hoffe, das könnte jemandem helfen

0
Deepthi

Das einzige, was für mich funktioniert hat:

In project.properties habe ich Folgendes geändert:

cordova.system.library.1 = com.Android.support: support-v4: + an cordova.system.library.1 = com.Android.support: support-v4: 20. +

0
abelabbesnabi

Ich habe die zweite Lösung:

  1. https://dl.dropboxusercontent.com/u/16403954/Android-21.Zip zu sdk\platforms\ entpacken
  2. build.gradle wie ändern 

    compileSdkVersion 21
    buildToolsVersion "20.0.0"
    
    defaultConfig {
        applicationId "package.name"
        minSdkVersion 10
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    
  3. hinzufügen 

    <uses-sdk tools:node="replace" /> 
    

    in Manifest mit xmlns:tools="schemas.Android.com/tools";

  4. Gehe zu sdk\extras\Android\m2repository\com\Android\support\support-v4\21.0.0-rc1\

entpacke support-v4-21.0.0-rc1.aar und editiere AndroidManifest.xml like

von 

<uses-sdk
        Android:minSdkVersion="L"
        Android:targetSdkVersion="L" />

zu 

<uses-sdk
        Android:minSdkVersion="4"
        Android:targetSdkVersion="21" />

P.S. Sie können dies mit allen erforderlichen Unterstützungsbibliotheken durchführen.

0
Vova K.

Sie müssen lediglich den Mindest-API-Level von Build Settings -> Player Settings -> Other Settings -> Minimum SDK Level in eine höhere Version ändern.

0
Codemaker

Greifen Sie einfach auf das gewünschte minSdkVersion zu, d. H. Ändern Sie es auf das benötigte. In meinem Fall war minSdkVersion14.

Der Wechsel zu minSdkVersion16 hat das Problem behoben

compileSdkVersion 29
    defaultConfig {
        applicationId "e.futaaapp"
        minSdkVersion 14
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

compileSdkVersion 29
    defaultConfig {
        applicationId "e.futaaapp"
        minSdkVersion 16
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
0
Kim

Lösung: Manifest-Fusion fehlgeschlagen Attribut application @ ppComponentFactory ...

Wenn Sie eine der neuesten und besten Firebase-Bibliotheken oder andere Bibliotheken verwenden, die tatsächlich AndroidX anstelle von Android.support verwenden, liegt möglicherweise das Problem vor, dass die Manifest-Fusion fehlgeschlagen ist. In diesem Fall muss Ihr Projekt auf AndroidX migriert werden. Folgen Sie also dem Link: https://firebase.google.com/support/release-notes/Android#update_-_june_17_2019

Oder schauen Sie sich dieses Video an. https://youtu.be/RgveQ4AY1L8 Vielen Dank.

0
Subhojit Halder

Der beste Weg ist, das Android Studio das Problem beheben zu lassen.

Ich habe das Folgende getan und es hat gut funktioniert.

  1. Öffnen Sie Ihr Projekt in Android Studio. Es wird ein Popup-Fenster angezeigt, wenn ein Link zum Beheben des Problems vorhanden ist. Klicken Sie darauf.

  2. Öffnen Sie Ihr Projekt erneut in Android Studio, Fehler werden angezeigt. Diesmal wird ein Link angezeigt, wenn er nicht in Schritt 1 angegeben ist. Klicken Sie auf den angegebenen Link, um ihn zu beheben.

Beachten Sie, dass beide Vorgänge einige Minuten gedauert haben, aber alle Probleme behoben wurden.