Android studio: Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version L declared in library

Question!

I am new to android studio, and have experienced issues setting up the whole system.

I have been unexpectedly receiving the following error from manifest: I have searched for solutions, but is still troubled. Below is the manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.dooba.beta"
    android:versionCode="1"
    android:versionName="1.0" >


            <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
                <uses-permission android:name="android.permission.GET_ACCOUNTS" />




       <!-- for card.io card scanning -->
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.VIBRATE" />

    <uses-feature android:name="android.hardware.camera" android:required="false" />
    <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />

    <!-- for most things, including card.io & paypal -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.INTERNET"/>
         <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

         <uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

<!--
  IMPORTANT: Change "com.parse.starter.permission.C2D_MESSAGE" in the lines below
  to match your app's package name + ".permission.C2D_MESSAGE".
-->
<permission android:protectionLevel="signature"
    android:name="com.dooba.beta.permission.C2D_MESSAGE" />
<uses-permission android:name="com.dooba.beta.permission.C2D_MESSAGE" />



    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="19" />

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

    <application
        android:name="com.dooba.beta.IntegratingFacebookTutorialApplication"
        android:allowBackup="true"
        android:largeHeap = "true"
        android:icon="@drawable/logo3"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.dooba.beta.LoginActivity"
            android:label="@string/app_name"
            android:launchMode="singleTop"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Holo.Light.NoActionBar" > 

              <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter> 

        </activity>
        <activity
            android:name="com.dooba.beta.UserDetailsActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">

            </activity>
        <activity
            android:name="com.dooba.beta.EventsActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">


        </activity>



        <activity 
            android:name="com.dooba.beta.CasualEventsActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
           android:theme="@style/CustomActionBarTheme"
             >
              <meta-data android:name="android.support.UI_OPTIONS"
                   android:value="splitActionBarWhenNarrow" />

        </activity>


        <activity
            android:name="com.dooba.beta.CultureEventsActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">


        </activity>

           <activity
            android:name="com.dooba.beta.ConfirmedPaymentList"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">


        </activity>
        <activity
            android:name="com.dooba.beta.EntertainmentEventsActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">


        </activity>

             <activity
            android:name="com.dooba.beta.introActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">


        </activity>
        <activity
            android:name="com.facebook.LoginActivity"
            android:label="@string/app_name"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />

        <meta-data
            android:name="com.facebook.sdk.ApplicationId"
            android:value="@string/app_id" />

        <activity
            android:name="com.dooba.beta.MoodActivity"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">
         </activity>

        <activity
            android:name="com.dooba.beta.ProfileChange"

            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">


        </activity>
        <activity
            android:name="com.dooba.beta.ProfileCreation"
            android:label="@string/title_activity_profile_creation"
            android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">



        </activity>
        <activity
            android:name="com.dooba.beta.EventsSingleItemActivity"
            android:theme="@style/CustomActionBarTheme"
                          android:screenOrientation="portrait">

        </activity>
         <activity
            android:name="com.dooba.beta.CultureEventsSingleItemActivity"
            android:label="@string/title_activity_even_single_item"
              android:screenOrientation="portrait"
            android:theme="@style/CustomActionBarTheme">

        </activity>
         <activity
            android:name="com.dooba.beta.EntertainmentEventsSingleItemActivity"
            android:theme="@style/CustomActionBarTheme">

        </activity>
         <activity
            android:name="com.dooba.beta.CasualEventsSingleItemActivity"
            android:theme="@style/CustomActionBarTheme">

        </activity>

        <activity
            android:name="com.dooba.beta.MatchingActivity"
            android:label="@string/title_activity_even_single_item"
            android:theme="@style/CustomActionBarTheme">



        </activity>

         <activity
            android:name="com.dooba.beta.matchOptionActivity1"
            android:theme="@style/CustomActionBarTheme">



        </activity>

           <activity
            android:name="com.dooba.beta.BookingMatchOptionActivity"
            android:theme="@style/CustomActionBarTheme">



        </activity>

           <activity
            android:name="com.dooba.beta.BookingMatchConfirmationActivity"
            android:theme="@style/CustomActionBarTheme">



        </activity>
            <activity
            android:name="com.dooba.beta.matchOptionActivity2"
            android:theme="@style/CustomActionBarTheme">



        </activity>
            <activity
            android:name="com.dooba.beta.matchOptionActivity3"
            android:theme="@style/CustomActionBarTheme">

        </activity>

             <activity
            android:name="com.dooba.beta.matchOptionActivity4"
            android:theme="@style/CustomActionBarTheme">

        </activity>

              <activity
            android:name="com.dooba.beta.matchOptionActivity5"
            android:theme="@style/CustomActionBarTheme">

        </activity>

        <activity
            android:name="com.dooba.beta.ScheduleMatchOptionActivity"
            android:theme="@style/CustomActionBarTheme">

        </activity>

        <activity
            android:name="com.dooba.beta.PayPalPaymentActivity1"
            android:theme="@style/CustomActionBarTheme">

        </activity>

         <activity
            android:name="com.dooba.beta.usermatch"
            android:label="@string/title_activity_even_single_item"
             android:theme="@style/CustomActionBarTheme">



        </activity>

          <activity
            android:name="com.dooba.beta.profileDetailsActivity"
             android:theme="@style/CustomActionBarTheme">



        </activity>

            <activity
            android:name="com.dooba.beta.UserActivity"
             android:theme="@style/CustomActionBarTheme">

        </activity>

             <activity
            android:name="com.dooba.beta.ConfirmedMatchListActivity"
             android:theme="@style/CustomActionBarTheme">

        </activity>

             <activity
            android:name="com.dooba.beta.InviteFriendActivity"
             android:theme="@style/CustomActionBarTheme">

        </activity>


         <activity android:name=".ListUsersActivity"></activity>

        <service android:name="com.dooba.beta.MessageService"></service>
        <activity android:name=".MessagingActivity1"
                  android:screenOrientation="portrait"
                  android:theme="@style/CustomActionBarTheme">
        </activity>

        <activity android:name=".MessagingActivity2"
                  android:screenOrientation="portrait"
                  android:theme="@style/CustomActionBarTheme">
        </activity>

        <activity android:name=".MessagingActivity3"
                  android:screenOrientation="portrait"
                  android:theme="@style/CustomActionBarTheme">
        </activity>

        <activity android:name=".MessagingActivity4"
                  android:screenOrientation="portrait"
                  android:theme="@style/CustomActionBarTheme">
        </activity>

        <activity android:name=".MessagingActivity5"
                  android:screenOrientation="portrait"
                  android:theme="@style/CustomActionBarTheme">
        </activity>

           <service android:name="com.paypal.android.sdk.payments.PayPalService"
            android:exported="false" />

        <activity android:name="com.paypal.android.sdk.payments.PaymentActivity" />
        <activity android:name="com.paypal.android.sdk.payments.LoginActivity" />
        <activity android:name="com.paypal.android.sdk.payments.PaymentMethodActivity" />
        <activity android:name="com.paypal.android.sdk.payments.PaymentConfirmActivity" />
        <activity android:name="com.paypal.android.sdk.payments.PayPalFuturePaymentActivity" />
        <activity android:name="com.paypal.android.sdk.payments.FuturePaymentConsentActivity" />
        <activity android:name="com.paypal.android.sdk.payments.FuturePaymentInfoActivity" />
        <activity android:name="com.paypal.android.sdk.payments.PayPalProfileSharingActivity" />
        <activity android:name="com.paypal.android.sdk.payments.ProfileSharingConsentActivity" />

        <activity
            android:name="io.card.payment.CardIOActivity"
            android:configChanges="keyboardHidden|orientation" />
        <activity android:name="io.card.payment.DataEntryActivity" />

        <service android:name="com.parse.PushService" />
<receiver android:name="com.parse.ParseBroadcastReceiver">
  <intent-filter>
    <action android:name="android.intent.action.BOOT_COMPLETED" />
    <action android:name="android.intent.action.USER_PRESENT" />
  </intent-filter>
</receiver>
<receiver android:name="com.parse.GcmBroadcastReceiver"
    android:permission="com.google.android.c2dm.permission.SEND">
  <intent-filter>
    <action android:name="com.google.android.c2dm.intent.RECEIVE" />
    <action android:name="com.google.android.c2dm.intent.REGISTRATION" />

    <!--
      IMPORTANT: Change "com.parse.tutorials.pushnotifications" to match your app's package name.
    -->
    <category android:name="com.dooba.beta" />
  </intent-filter>
</receiver>


    </application>

</manifest>

Below is the gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 19
    buildToolsVersion '19.1.0'

    defaultConfig {
        applicationId "com.dooba.beta"
        minSdkVersion 14
        targetSdkVersion 19
    }

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

dependencies {
    compile project(':facebookSDK')
    compile 'com.google.android.gms:play-services:+'
    compile 'com.google.code.gson:gson:2.2.2'
    compile 'com.android.support:appcompat-v7:19.1.0'
    compile files('libs/feedback_v6.jar')
    compile files('libs/httpmime-4.2.5.jar')
    compile files('libs/Parse-1.6.0.jar')
    compile files('libs/PayPalAndroidSDK-2.5.1.jar')
    compile files('libs/picasso-2.3.4.jar')
    compile files('libs/sinch-android-rtc-3.3.4.jar')
    compile files('libs/volley.jar')
}

Any help would be deeply appreciated.



Answers

You need to state the exact version of play services I think

compile 'com.google.android.gms:play-services: '

vs

compile 'com.google.android.gms:play-services:4.4.52'


Basically one of the libraries you are using has minSdkVersion L so your application needs to be min sdk L, or change to use a library that doesn't have that restriction. i.e. what I think above.

By : Blundell


This video can help you solving your question :)
By: admin