Ich verwende die Leanback-Bibliotheken, für die Android 17 oder höher erforderlich ist. Meine App unterstützt jedoch ein minSDK von 16, sodass ich vom Gradle-Sprichwort einen Build-Fehler erhalte
Error:Execution failed for task ':Tasks:processPhoneDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 17 declared in library /Users/mike/Projects/android-for-dummies-v3/Tasks/build/intermediates/exploded-aar/com.android.support/leanback-v17/21.0.2/AndroidManifest.xml
Suggestion: use tools:overrideLibrary="android.support.v17.leanback" to force usage
Wenn ich mir die Dokumentation zu den Build-ToolsoverrideLibrary
ansehe, sehe ich, wie ich den Marker zu meinem Manifest hinzufüge. Das Problem ist jedoch, dass ich mein minSdk in meiner Gradle-Datei anstatt in meinem Manifest deklariere.
Wie verwende ich, overrideLibrary
wenn das minSdk in build.gradle anstatt in AndroidManifest.xml deklariert ist?
android
gradle
android-tv
emmby
quelle
quelle
Antworten:
Öffnen Sie Android Studio -> Manifestdatei öffnen
add
<uses-sdk tools:overrideLibrary="android.support.v17.leanback"/>
vergiss nichtxmlns:tools="http://schemas.android.com/tools"
, auch vor dem<application>
Tag einzuschließenquelle
tools:overrideLibrary="info.hoang8f.fbutton"
<uses-sdk tools:ignore="GradleOverrides">
. Dadurch wird Ihrtools:overrideLibrary
Attribut ignoriert. Siehe stackoverflow.com/questions/31062893/…Es spielt keine Rolle, dass Sie Ihr minSdk in build.gradle deklarieren. Sie müssen
overrideLibrary
in Ihre kopierenAndroidManifest.xml
, wie hier dokumentiert .Das System ignoriert automatisch die in AndroidManifest.xml deklarierte sdkVersion.
Ich hoffe das löst dein Problem.
quelle
Ich war mit dem Problem des Konflikts zwischen verschiedenen min sdk-Versionen konfrontiert. Diese Lösung hat also bei mir funktioniert.
quelle
minSdkVersion 17
Je nach Bedarf der Bibliothek können Sie dasselbe in derbuild.gradle
Datei (Modul: Anwendung) ändern :und nach dem Erstellen sollte das Projekt keinen Erstellungsfehler auslösen.
quelle
Ich habe gerade
minSdkVersion="7"
inC:\MyApp\platforms\android\CordovaLib\AndroidManifest.xml
und es funktionierte.Schritte:
C:\MyApp\platforms\android\CordovaLib\AndroidManifest.xml
<uses-sdk android:minSdkVersion="7"/>
Ran-Befehl in neuer cmd-Eingabeaufforderung:
C:\MyApp>phonegap build android --debug [phonegap] executing 'cordova build android --debug'... [phonegap] completed 'cordova build android --debug'
quelle
overrideLibrary
das minSdk in build.gradle deklariert werden soll.nur geändert android: minSdkVersion = "16" und es funktioniert perfekt C: \ MyApp \ platform \ android \ CordovaLib \ AndroidManifest.xml
quelle
Verwenden Sie diesen Code in manifest.xml
quelle
Als Soulution für alle Bibliotheken können wir die SDK-Version von ihnen abgleichen, damit kein unerwartetes Ereignis eintreten kann
Entfernen Sie Bibliotheken, die Sie nicht in Ihrem Projekt verwenden (gms), und stellen Sie sicher, dass die SDK-Version mit den Gradle-Daten auf App-Ebene übereinstimmt
quelle