1

I've followed following topic with no result. Decided to find|grep all support-v4 contents in project folder and remove them. Every time I make and run project it respons with:

Error:Execution failed for task ':app:processDebugManifest'.
> 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

My build.gradle from module is:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 19
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.android"
        minSdkVersion 14
        targetSdkVersion 17
    }

    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
    compile 'com.google.android.gms:play-services:4.2.+'
    compile 'com.android.support:appcompat-v7:+'
}

build.gradle from project root:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.2'

    }
}

allprojects {
    repositories {
        jcenter()
    }
}

I know it is similar topic but suggested sollution does not fit this case. I would appreciate any explanation of this all dependencies structure which might have impact in that problem.

When we find|grep for "support-v4" inside this project folder it looks like this:

...\.gradle\1.12\taskArtifacts\fileSnapshots.bin                                                    
...\.gradle\1.12\taskArtifacts\taskArtifacts.bin                                                    
...\.idea\workspace.xml                                                                             
...\.idea\libraries\support_v4_21_0_0_rc1.xml                                                       
...\app\app.iml                                                                                     
...\app\build.gradle                                                                                                   
...\app\build\intermediates\incremental\mergeResources\debug\merger.xml                             
...\build\intermediates\model_data.bin  

Regards

Community
  • 1
  • 1
Jacob
  • 14,949
  • 19
  • 51
  • 74
  • what did you try changing? did you actually put in `compile 'com.android.support:support-v4:20.0.0'` or did you change you `v7` library to that? hopefully you changed your `v7` library – tyczj Aug 27 '14 at 20:47
  • Why v7 lib should cause v4 problem, is there any connection between them when sync/build project? – Jacob Aug 27 '14 at 20:52
  • `v7` library includes `v4` library – tyczj Aug 27 '14 at 20:52
  • Ok, so v4 import is useless if we do import v7, yes ? – Jacob Aug 27 '14 at 20:58

1 Answers1

1

Replace:

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

with:

compile 'com.android.support:appcompat-v7:19.1.0'

In general, do not use + wildcards at the top version level. If you wanted to use 19.1.+, or even 19.+, I wouldn't argue (though others would).

CommonsWare
  • 986,068
  • 189
  • 2,389
  • 2,491
  • AFAIK, further problem mostly occurs with :support-v4 not v7, but still no idea how to solve it.. – Jacob Aug 27 '14 at 20:50
  • 2
    @Kuba: `appcompat-v7` depends upon `support-v4`. Hence, pulling in too-new of a version of `appcompat-v7` will pull in too-new of a version of `support-v4`. – CommonsWare Aug 27 '14 at 20:51