Fusione Manifest fallito : usa - sdk : minSdkVersion 10 non può essere inferiore a versione L dichiarato com.android.support:appcompat-v7:21.0.0-rc1 biblioteca

? Andrew @ | Original: StackOverFlow
---

Ha ottenuto l'errore precedente dopo aver scaricato L anteprima versione in Android Studio, quando il mio progetto ha avuto minSdkVersion 19 .

Inoltre, quando si imposta mindSdkVersion, come di seguito :

defaultConfig {
....
          minSdkVersion 'L'
....
    }

Ricevo decine di errori come sotto, per quanto riguarda le risorse da AppCompat-v7-21 :

/home/user/workspace/project/build/intermediates/exploded-aar/com.android.support/appcompat-v7/21.0.0-rc1/res/values-v21/values.xml
Error:Error retrieving parent for item: No resource found that matches the given name '@android:TextAppearance.Material.SearchResult.Subtitle'.

Così ho 2 domande :

Why does AS complain about minSdkVersion ? I presume because AppCompat-v7 21 supports only L release; but why ? Also, will it support only L release when it is going to be officially released in autumn too ? Because that would be a problem... Or is it just a temporary restriction in order for apps not be be pushed to Play Store, as specified in the Google I/O 2014 Keynote ? Why does AppCompat-v7 21 complain about those errors, as I already set mindSdkVersion to L ?
---

Top 5 Risposta

1Andrew @
compileSdkVersion 'android-L'

BOOM. Done.

Ultima modifica : Come di release 5.0 di Android, questo non è più un problema, solo obiettivo livello API 21 direttamente .

Edit per chiarezza : infatti, come specificato di seguito David_E, questa soluzione funziona solo per la versione L, se si tenta di distribuire l'applicazione su un dispositivo sotto L (ex < = 4.4.4 ) si lamentano di OLD_SDK . Perché l'applicazione funzioni pre -L è ancora necessario utilizzare il vecchio supporto v20 lib + app compat + targetVersionSdk e compileVersionSdk < pre > dependencies { compile 'com.android.support:appcompat-v7:20.+' compile 'com.android.support:support-v4:20.+' } android { compileSdkVersion 20 buildToolsVersion '20' defaultConfig { applicationId "com.example.application" minSdkVersion 10 targetSdkVersion 20 versionCode 1 versionName "1.0" } } < / pre> < ; > Boardy { * } { * } 499.448 2014/06/26 21:04:58 < / ; > < p > Il modo in cui ha lavorato per me è stato quello di installare l' Android Studio Beta ( non Preview Release, la Beta è stata lanciata oggi come parte di IO ) .

Disinstallare la versione di anteprima e installare la Beta e aprire il progetto . Ti verrà chiesto di utilizzare progetto SDK o Studio SDK, utilizzare SDK di Android Studio .

Vai alla scheda vostri progetti local.properties e dove avete sdk.dir garantire che qualsiasi backslash ( ) sono raddoppiati fino .EG .

Vai a Progetto Struttura > SDK e garantire ciò che punta a SDK Android sul mio PC è stato C : Program Files ( x86 ) Androidandroid - studioSDK .

Poi nei vostri progetti e le librerie si dispone di file build.gradle cui devi

compile 'com.android.support:support-v4 Cambiare a compile 'com.android.support:support-v4:20+

Risincronizzare i file Gradle e tutto fisso

2David_E @

La risposta ha dichiarato http://stackoverflow.com/a/24437408/1700793 potrebbe non funzionare correttamente, in quanto renderà la vostra applicazione funziona solo per Android L.

Al fine di conservare la compatibilità con le versioni meno recenti del sistema operativo Android, cambiare il dependecy Gradle

From:

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

To:

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

Si noti che l'errore si lamenta com.android.support:appcompat-v7:21.0.0-rc1, la ragione di ciò è che l'uso di appcompat-v7:+ dirà Gradle importare l'ultima dipendenza del appcompat-v7 library, purtroppo questa ultima versione funziona solo per Android L, quindi dobbiamo puntare a una versione precedente .

Speriamo che Google risolverà questo in un prossimo futuro .

3Oakenwind @

Proprio in aggiunta : Le altre risposte qui non hanno risolto il problema per me, ma ho trovato un modo alternativo per risolvere il problema android -l su Android Studio 0.8.0 . Dopo che ho fatto cambiare le dipendenze nel build.gradle, il problema purtroppo continuava verificatesi, che il codice avrebbe detto OLD_SKD . Io sto usando un Galaxy S2 .

Oltre a cambiare tutte le cose : 19+ :

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:19+'
    compile 'com.android.support:support-v4:19+'
    compile 'com.google.android.gms:play-services:+'
    compile 'com.android.support:mediarouter-v7:19+'
}

Ancora non avrebbe funzionato, così ho dovuto tornare ovunque possibile :

android {
    compileSdkVersion 19
    buildToolsVersion '19.1'
    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 19
        versionCode 1
        versionName '1.0'
    }

Ora l' applicazione funziona di nuovo al telefono . Probabilmente dovrei ottenere un nuovo cellulare, ma per ora, spero che questo possa aiutare qualcuno .

4BubbaGum @

Per forzare lavorando con una versione funzionante Basta cambiare le dipendenze Gradle come questo :

dependencies {
    compile 'com.android.support:gridlayout-v7:19.0.1'
    compile 'com.android.support:appcompat-v7:19+'
    ...
}

was:

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

N.B.

Ho aggiornato Strumenti & amp ; Extra in Gestione SDK .

dopo che il progetto era rotto ho fissato come indicato sopra .

Per ora non aggiorno android L & amp ; 4.4W ( abbastanza bug per oggi : - ( )