Does using `tools:overrideLibrary` have any benifits over `minSdkVersion`? - android

I'm going to use a library in my project and it shows error:
Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 15 declared in library [:library:] ... Suggestion: use
tools:overrideLibrary="test.com.library" to force usage
This prompt lets me know that imported liobrary using higher version (15) than my application min sdk version which is 14.
I want to know if I
I want to know if I use tools:overrideLibrary does it let my application to keep its min SDK version and be installed on phones with API14 or it is not the case? Beside I want to know what is the benefit for using tools:overrideLibrary over `minSdkVersion'?

Related

Switch library based on minSdkVersion

On my current Android app, the minimum SDK version is 19. I use a library lets call it as "XYZ.jar".
The minimum compatible version of library is also 19. It works perfectly fine.
Now I have a requirement that my app should support Android 4.1.1 which is of sdkversion 16.
When I changed the minimum SDK version in the app to 16 and when I build it, I get the following error.
Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [XXX_Android_v2.0:XXXLibrary:unspecified] XXPATHXX\app\build\intermediates\exploded-aar\XXX_Android_v2.0\XXXLibrary\unspecified\AndroidManifest.xml]
Suggestion: use tools:overrideLibrary="com.xxx.xxx.api3" to force usage
I have one more library lets call it as "ABC" which has an miniumum sdk version 14. So what i need to acheive is when the sdkversion is less than 19
use library ABC and when the sdk version is more than 19 use the liberabry XYZ. How do i acheive this while building my project ?

Manifest merger failed : uses-sdk:minSdkVersion 11

I really don't know what's the problem, I always get this error when I try to build my project
Error:Execution failed for task ':app:processReleaseManifest'.
Manifest merger failed : uses-sdk:minSdkVersion 11 cannot be smaller than version 14 declared in library [com.google.android.gms:play-services:10.2.0] C:\Users\AYOUB\Desktop\Boiling ball studio\app\build\intermediates\exploded-aar\com.google.android.gms\play-services\10.2.0\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="com.google.android.gms.play_services" to force usage
As stated in the error; you should update your minimum version from 11 to 14.
Google Play services need at least Android version 14 (4.0) to work.
Check this link from Google
Manifest Merger occurs when there is a mismatch in a version of your dependencies. So be careful to mention the version of your dependencies to be same.
And also make sure that the version is same in all the external libraries or a module, you are using.

Error on play my app from developer.android

i'm new on Android
The Android Studio give me a fail when I try to run my app from
https://developer.android.com/training/basics/firstapp/starting-activity.html
The fail text is:
Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version 9 declared in library [com.google.android.gms:play-services-appindexing:8.1.0] C:\Users\Spluaks\AndroidStudioProjects\HolaMundo\app\build\intermediates\exploded-aar\com.google.android.gms\play-services-appindexing\8.1.0\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="com.google.android.gms.appindexing" to force usage
Someone know?
Change your SDK minSdkVersion 8 to 9 !! nothing else
The problem is com.google.android.gms:play-services-appindexing:8.1.0 uses minimum sdk to 9, but you app is using minimum sdk 8.
*Solution: *
Go to your /app/build.gradle and change minSdkVersion to 9.

error import android eclipse project in Android Studio

Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version 9 declared in library [com.google.android.gms:play-services:8.4.0] C:\Users\admin\Desktop\RingtoneApp2\app\build\intermediates\exploded-aar\com.google.android.gms\play-services\8.4.0\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="com.google.android.gms.all" to force usage
I used the site
http://developer.android.com/sdk/installing/migrate.html
You have a library (Play Services) that declares its minSdkVersion to be 9 but your application declares it to be 8. Since the library won't work on API 8, this combination is invalid. Eclipse didn't check for this but Android Studio does.
First Remove the google play library(in this case com.google.android.gms.play_services), then open manifests --> AndroidManifest.xml and change min sdk version to 9
This Line: android:minSdkVersion="9"
Also Change it in your build.gradle of app.. under the defaultConfig

Minimum SKD of dependecy is higher than project minimum SDK

Hello I'm importing compile 'me.grantland:autofittextview:0.2.+'this project is min sdk 14 and my min sdk is 9. When i compile the project error message pops out:
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 9 cannot be smaller than version 14 declared in library [me.grantland:autofittextview:0.2.1] E:\Android\Projects\Colorido\app\build\intermediates\exploded-aar\me.grantland\autofittextview\0.2.1\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="me.grantland.widget" to force usage
So i added
<uses-sdk tools:overrideLibrary="me.grantland.widget"/> and also xmlns:tools="http://schemas.android.com/tools"
but no change. Is there a way to change minimum sdk of imported project? Thanks.
Remove the override, that's a bad idea.
Your IDE should have a GUI option somewhere to change it to > 14.
Here's a previously asked question on how to change it.
Changing API level Android Studio
You should change your project to library's minimumSKD value (in your case 14). This is because the library does not support less than API 14 thus you can not use it according to the requirements needed... For more info click HERE.
Therefore, you can look for an alternative library or download the same library and import it to your project then change the minimumSKD value to 9.

Categories

Resources