How do I use tools:overrideLibrary in a build.gradle file?

emmby picture emmby · Nov 23, 2014 · Viewed 136.3k times · Source

I'm using the leanback libraries, which require Android 17 or later. However my app supports a minSDK of 16, so I get a build error from gradle saying

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

When I look at the build tools documentation, I see how to add the overrideLibrary marker to my manifest, but the problem is that I'm declaring my minSdk in my gradle file instead of in my manifest.

How do I use overrideLibrary when the minSdk is declared in build.gradle instead of in AndroidManifest.xml?

Answer

xDragonZ picture xDragonZ · Dec 5, 2014

Open Android Studio -> Open Manifest File

add <uses-sdk tools:overrideLibrary="android.support.v17.leanback"/> don't forget to include xmlns:tools="http://schemas.android.com/tools" too, before the <application> tag

enter image description here