8

Alles war in Ordnung, bis ich das Android-Studio auf Canary 6 aktualisiert, Wenn ich neu oder sauber oder was auch immer mit Projekt es ist werfen :

ist ein Fehler aufgetreten, während com.android.build.gradle.tasks.MergeResources $ FileGenerationWorkAction

Ausführung Und dieser Fehler führen mich zu meinem vectors.xml [Alle von ihnen habe diesen Fehler] .

Meine Aktuelle App-Ebene build.gradle:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.2" 
    useLibrary 'org.apache.http.legacy' 
    defaultConfig { 
     applicationId "example.project" 
     minSdkVersion 15 
     targetSdkVersion 25 
     versionCode 42 
     versionName "1.3" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
     //multiDexEnabled = true 
    } 
    buildTypes { 
     buildTypes { 
      release { 
       minifyEnabled false 
       proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
      } 
     } 
    } 
} 


dependencies { 

    compile 'com.android.support:appcompat-v7:25.3.1'//<-- can't update to new one 
    compile 'com.android.support:design:25.3.1' 
    compile 'com.android.support.constraint:constraint-layout:1.0.2' 
    compile 'com.android.support:support-v4:25.3.1' 
    compile 'com.google.code.gson:gson:2.7' 
    compile 'com.android.support:support-v13:25.3.1' 
    compile 'com.android.support:palette-v7:25.3.1' 
    compile 'de.hdodenhof:circleimageview:2.1.0' 
    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'com.mcxiaoke.volley:library-aar:1.0.0' 
    compile 'com.squareup.okhttp3:okhttp:3.0.1' 
    compile 'com.android.support:multidex:1.0.1' 
    testCompile 'junit:junit:4.12' 
} 

Auch wenn ich com.android.support Bibliotheken herunterladen versucht, die IDE nur für die sdk suchen und einfach nichts tun.

Was ich versucht worden:

  • reinigen und neu erstellen.

  • Caches ungültig machen.

+0

Es gibt eine Menge Probleme mit Android Studio Kanarienvogel 6, i beraten Sie auf Android Studio 2.3.3 oder ändern Pfad Ihrer Klasse in th Abhängigkeiten 2.3 arbeiten .3 – Mohad12211

+0

Kanarienvogel 4 ist stabiler als 5/6, besonders wenn Sie Kotlin + ConstraintLayout verwenden. –

Antwort

41

Den Vorteile zu ändern, um eine Multi Hinzufügen Bei der Dichtevektorgrafik wird ein Vektor anstelle einer Bitmap verwendet, um die Größe des APK zu reduzieren, da die Größe derselben Datei für unterschiedliche Bildschirmdichten ohne Verlust der Bildqualität angepasst werden kann. Für ältere Versionen von Android, die nicht Vektor Drawables, Vektor Asset-Studio kann, bei der Erstellung unterstützen, schalten Sie den Vektor Drawables in verschiedene Bitmap-Größen für jede Rasterdichte

classpath 'com.android.tools.build:gradle:3.0.0-alpha8 

build.gradle

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

hast du meine Zeit gerettet. +1 Stimme für dich Tnx wieder –

1

Es gibt eine Menge Probleme mit Android Studio Kanarienvogel 6, der beste Weg, das zu lösen ist Ihren Klassenpfad in den Abhängigkeiten in Ihrem gradle zu

classpath 'com.android.tools.build:gradle:2.3.3' 
+0

Sie sicher, dass '2.3.3' Version mit der Build-exution funktioniert? – Ibrahim

+0

Ich habe den Classpath auf 2.3.3 in Android Studio Kanarienvogel 6 ohne Probleme geändert. – Mohad12211

+0

Das Problem hat nichts mit der Android Studio- oder Gradle-Build-Version zu tun. Es passiert auch in Android Studio 3.0 Release Build. Die Lösung ist das vectorDrawables.useSupportLibrary = true-Flag, das in den anderen Antworten erwähnt wird. – Minsky

8

Hinzufügen von vectorDrawables.useSupportLibrary = true zu defaultConfig von build.gradle (Module) arbeitete für mich. :)

2

Ich hatte das gleiche Problem. Es gab zwei Möglichkeiten, meinen Fall zu beheben:

  1. vectorDrawables.useSupportLibrary = true
  2. In meinem ziehbar Vektor XML-Dateien Hinzufügen gab es Links zu @color:

    <path 
        android:fillColor="@color/white" 
        ... 
    

    ich mit

    ersetzt
    <path 
        android:fillColor="#fff" 
        ... 
    

    und das Problem verschwand.

1

Einfach vectorDrawables hinzufügen.useSupportLibrary = true in DefaultConfig, dann ist es gut funktionieren für mich

defaultConfig { 
     vectorDrawables.useSupportLibrary = true 
} 
Verwandte Themen