2016-07-01 29 views
16

I Have costruire la mia applicazione in Android 6 senza alcun errore, ma quando io costruisco la mia app in Android 4.4.2 ottengo questo errorePerché "questa app è stata costruita con una configurazione errata" si è verificato un errore in alcuni telefoni?

 
This app has been built with an incorrect configuration. 
Please configure your build for VectorDrawableCompat. 

e questo è il mio Gradle:

android { 
    compileSdkVersion 24 
    buildToolsVersion "23.0.0" 
    defaultConfig { 
     applicationId "com.faranegar.channel" 
     minSdkVersion 11 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

nota : quando imposto compileSdkVersion 23, ogni cosa va bene e non c'è alcun errore.

risposta

17

Questo problema è stato inserito qui Issue 214182: appcompat-v7 24.0.0 is incompatible with rasterized vectors.

Uno dei menzione sviluppatore:

What version of the Gradle plugin are you using?

As of v2.0 of the Gradle plugin, library resources are never rasterized so this should never happen.

La soluzione per questo è di aggiornare il vostro Gradle seguendo questo link ufficiale. Android Plugin for Gradle Release Notes.

buildscript { 
    ... 
    dependencies { 
    classpath 'com.android.tools.build:gradle:2.1.0' 
    } 
} 
17

questo ha funzionato bene per me

android { 
compileSdkVersion 23 
buildToolsVersion "23.0.1" 

defaultConfig { 
    applicationId "com.example.app" 
    minSdkVersion 15 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    generatedDensities = [] 
} 

// This is handled for you by the 2.0+ Gradle Plugin 
aaptOptions { 
    additionalParameters "--no-version-vectors" 
} 

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

}

Avviso questo nel codice sopra:

// This is handled for you by the 2.0+ Gradle Plugin 
aaptOptions { 
    additionalParameters "--no-version-vectors" 
} 

e

generatedDensities = [] 

UPDATE

Se questa generatedDensities = [] sta mostrando obsoleto, utilizzare la seguente invece.

vectorDrawables.generatedDensities = [] 

Speranza che aiuta

+0

@ BlackPearl +1 voto per te. hai salvato il mio tempo Grazie –

4

se si utilizza drawable vettoriali rasterizzati

per Gradle plug 2.0+

android { 
    defaultConfig { 
    vectorDrawables.useSupportLibrary = true 
    ... 
    } 
} 

per Gradle plug-in prima di 2,0

android { 
    defaultConfig { 
    generatedDensities = [] 
    ... 
    } 

    aaptOptions { 
    additionalParameters "--no-version-vectors" 
    } 
} 

dovresti aggiungere appcompat-v7 23.2.0+ al tuo build.gradle.per me, sto usando

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

dopo aver aggiunto vectorDrawables.useSupportLibrary = true, ho ricevuto questo errore, "Errore: (14, 0) Impossibile trovare la proprietà 'vectorDrawables'" Per favore dimmi dove sto andando male – Woody

+0

@Woody controlla il tuo gradle la versione plugin nella proprietà build.gradle.'vectorDrawables è supportata nel plugin gradle 2+. –