I have been working with two android studio projects separately.
Project 1: Uses a third party proprietary library (SDK minversion 9
) for generating online credit cards transactions. After coding the app works just fine.
Project 2: Uses another third party proprietary lib (SDK minversion 5
) for handling an audioJack card reader. After coding the app works just fine too.
The problem starts when I try to merge them in order to create the complete POS solution. And it comes from the differences of sdk Version of the libraries.
I tried to change the min version param in the build.gradle
files after merging... but after that, code of Project 2 starts generating errors due to the new sdk version used to compile (Probably it has some deprecated classes inside).
1) With this Gradle this works fine: apply plugin: 'com.android.application'
android {
compileSdkVersion 20
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.acs.audiojackdemo"
minSdkVersion 5
targetSdkVersion 20
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile files('libs/acsaudiojack-1.0.0preview15.jar')
}
2) The error is thrown when I add the library:
compile('com.mercadopago:sdk:2.3.6@aar') { transitive = true }
The error is:
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed :
uses-sdk:
minSdkVersion 5 cannot be smaller than version 9 declared in library
[com.mercadopago:sdk:2.3.6]
C:\Users\jajal\.android\build-cache\2c961bb48263cf26566b0501fade730485d110de\output\AndroidManifest.xml
Suggestion: use tools:overrideLibrary="com.mercadopago" to force usage
3) If I change the minSdkVersion
value from 5
to 9
, I get plenty of errors. The first error is:
Error:(3) Error retrieving parent for item:
No resource found that matches the given name
'android:Widget.Material.Spinner.Underlined'.