Execution failed for task 'app:mergeDebugResources' Crunching Cruncher....png failed

AndroidGradleBuild

Android Problem Overview


I've added some pictures with the format *.png to my drawable-directory and linked it with the layouts. But every time when I tried to build it, there appears an error

> "...Crunching Crunsher ...png failed"

Following is the output of the console:

app:mergeDebugResources
AAPT out(1561599) : No Delegate set : lost message:Done
AAPT out(12956469) : No Delegate set : lost message:Done
AAPT out(20612543) : No Delegate set : lost message:Crunching             C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\bt_meeting_focused.png
AAPT out(11030156) : No Delegate set : lost message:Crunching     C:\Dev\StudioProjects\test\android\app\src\main\res\mipmap-mdpi\ic_launcher.png
AAPT out(11030156) : No Delegate set : lost message:Crunching single PNG file: C:\Dev\StudioProjects\test\android\app\src\main\res\mipmap-    mdpi\ic_launcher.png
AAPT out(11030156) : No Delegate set : lost message:	Output file:     C:\Dev\StudioProjects\test\android\app\build\intermediates\res\debug\mipmap-mdpi-v4\ic_launcher.png
AAPT out(11030156) : No Delegate set : lost message:Done
AAPT err(11030156): libpng error: Not a PNG file
AAPT out(20612543) : No Delegate set : lost message:Crunching single PNG     file:     C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\bt_meeting_focused.png
AAPT out(20612543) : No Delegate set : lost message:	Output file:     C:\Dev\StudioProjects\test\android\app\build\intermediates\res\debug\drawable\b    t_meeting_focused.png
AAPT out(20612543) : No Delegate set : lost message:Done
AAPT err(20612543): libpng error: Not a PNG file
AAPT err(1561599): libpng error: Not a PNG file
AAPT err(12956469): libpng error: Not a PNG file

 FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Crunching Cruncher uhr.png failed, see logs

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --    debug option to get more log output.

BUILD FAILED

Total time: 14.598 secs
Executing tasks: [clean, :app:generateDebugSources,     :app:generateDebugAndroidTestSources]

Configuration on demand is an incubating feature.
:app:clean
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportSupportV42220Library
:app:prepareDebugDependencies
:app:compileDebugAidl
:app:compileDebugRenderscript
:app:generateDebugBuildConfig
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources
:app:mergeDebugResources
AAPT out(14080484) : No Delegate set : lost message:Done
AAPT out(9206750) : No Delegate set : lost message:Done
AAPT out(25360025) : No Delegate set : lost message:Done
AAPT err(25360025): libpng error: Not a PNG file
AAPT err(14080484): libpng error: Not a PNG file
AAPT out(6423170) : No Delegate set : lost message:Crunching C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\anfrage_senden_.png
AAPT err(6423170): libpng error: Not a PNG file
AAPT out(6423170) : No Delegate set : lost message:Crunching single PNG file:     C:\Dev\StudioProjects\test\android\app\src\main\res\drawable\anfrage_senden_.png
AAPT out(6423170) : No Delegate set : lost message:	Output file: C:\Dev\StudioProjects\test\android\app\build\intermediates\res\debug\drawable\a    nfrage_senden_.png
AAPT out(6423170) : No Delegate set : lost message:Done
AAPT err(9206750): libpng error: Not a PNG file

Process list not empty
:app:mergeDebugResources FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Crunching Cruncher uhr.png failed, see logs

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --    debug option to get more log output.

BUILD FAILED

Total time: 4.325 secs

I tried to clean the project, rebuild it, refresh the dependencies via "gradlew clean build --refresh-dependencies", nothing worked. I've checked the dependencies in the build.gradle file but nothing seems creating the error.

   apply plugin: 'com.android.application'
   android {
   compileSdkVersion 22
   buildToolsVersion "22.0.1"
   compileOptions.encoding = 'windows-1251'

   defaultConfig {
       applicationId "com.example.benutzer.test"
       minSdkVersion 16
       targetSdkVersion 22
       versionCode 1
       versionName "1.0"
   }
   buildTypes {
    release {
           minifyEnabled false
           proguardFiles getDefaultProguardFile('proguard-android.txt'),    'proguard-rules.pro'
       }
   }
   }

   dependencies {
   compile 'com.android.support:support-v4:22.2.0'
  }

Do you've got an idea, what's the source of the error? The filepath is also not too long and everytime unter 256 signs, that also not the problem :/

Thank you in advance :)

Android Solutions


Solution 1 - Android

In my case, the error was caused by a PNG file I added to the drawable folder. I had changed its extension from jpg to png by changing the text (in an inproper way) and then uploading it as PNG.

This was the problem Android Studio was pointing to.

I fixed this problem and got the error to disappear by changing the file extension using the Paint.NET tool or any other tool (proper way), and then uploading it to the drawable folder.

Solution 2 - Android

I fixed this issue by moving the project to the outer directory, and it then compiled successfully.

It was due to the long path of the project directory.

For example, I moved the project from:

D:/Android/Apps/AndroidStudioProject/AppName

to

D:/Android/AppName

Solution 3 - Android

This is due to adding an image in drawable which has some extension like (.jpg), and you have changed or saved that to a .png format (this error will occur while changing the image format manually without using an editor tool).

Android Studio will throws an error while compiling the resource package using AAPT (Android Asset Packaging Tool), so all you need to do is use some image editor tools like GIMP or Paint to save the extension accordingly. Rebuild your project once everything is done.

For example: open your image in Paint (drag and drop your image to open it) → menu FileSave AsSave as Type → select your required type from the dropdown like I have shown in the below pictures:

Enter image description here

Enter image description here

Solution 4 - Android

In my case the solution was simple. I moved the entire project to another location where the path is short.

The problem was caused by long directory names and file names.

Solution 5 - Android

The best solution is to change buildDir in build.gradle:

For example:

allprojects {
    buildDir = "C:/tmp/${rootProject.name}/${project.name}"
    repositories {
        jcenter()
    }
}

Rebuild and happy coding.

Solution 6 - Android

In my case, I solved this problem by simply changing my library file as I made a silly mistake of adding two different versions of the same library.

As this can be due to varied reasons, I found out the following ways to solve this issue as per the problem:

  1. Mismatch of resources

  2. Missing attributes, wrong tags, etc. in resources

  3. Issue in styles

  4. Missing name in styles

  5. Duplicacy of resources and libraries

  6. Sometimes it can even be solved by changing the compatible library in build.gradle

  7. Executing the aapt command

  8. Renaming the extension from .jpg to .png

  9. Simply with the help of Clean Project.

  10. Even in some cases, restarting Android Studio can solve the problem.

Solution 7 - Android

This is because your PNG file is not supported or else you renamed your file directly.

Do the following steps.

  1. Copy your image source file from Android Studio to your desktop.
  2. Open the file with Paint.
  3. Save file as extension .png
  4. Delete the existing source file from Android Studio which you copied.
  5. Add the newly created file which you renamed via Paint.

Problem solved :)

Solution 8 - Android

In my case, when I created a 9.png file, my original PNG file was using the margin where the 9.png line is drawn, creating a bad 9.png file. Try to add some margin to your PNG file.

Solution 9 - Android

If you're running Linux, try this:

sudo apt-get install lib32stdc++6 lib32z1

It is from here.

Solution 10 - Android

The best answer is already given in the gradle output:

* Try:
Run with --stacktrace option to get the stack trace. 

Open the Terminal in Android Studio and run gradlew :app:mergeDebugResources --stacktrace. (In my case it was the Windows 240 char limit), but it should give you the root cause for any other issue just as well.

Solution 11 - Android

In my case, I believe this issue was to do with the length of the file path. UNIX and Windows systems impose a maximum path length of 255 and 260 characters respectively, and I believe the crunch process fails when assigning to a dynamically-specified path. So, even if the quoted path lengths in the error message are shorter than the limit (mine was only 187 within a Windows build environment), I think the crunch utility may internally specify a longer path, even if just temporarily.

You may determine whether this is the source of error by moving your project to the root-most directory on your file system, then attempt recompiling.

Solution 12 - Android

I noticed downgrading Gradle build tools to 1.2.3 solved my problem of the Crunching PNG error, but on 1.5.0 the problem continues.

Solution 13 - Android

I tried to rebuilt, restart, clean, update Gradle, etc. However, none of them worked for me.

Sometimes, it can be caused by a wrong naming for an XML or resource file.

At least, for me, that problem was solved by changing the name.

Solution 14 - Android

I had put my images into my drawable folder at the beginning of the project, and it would always give me this error and never build so I:

  1. Deleted everything from drawable
  2. Tried to run (which obviously caused another build error because it's missing a reference to files
  3. Re-added the images to the folder, re-built the project, ran it, and then it worked fine.

I have no idea why this worked for me, but it did. Good luck with this mess we call Android Studio.

Solution 15 - Android

The Crunching process is the image preparation process, which means something is wrong with your image files. In my case I had a PNG file which was not really a PNG file.

My solution:

I converted all my images to PNG running a super simple Python script from within the image folder, so in total all you need to do is:

  1. In order to install the PIL library, run: pip install pillow

  2. Save the below Python code in a .py file within your images folder you want to convert.

  3. Adjust the from_format, to_format variables in the script to whatever you need.

  4. Run script: python script_name.py

    import os
    from PIL import Image
    
    from_format = (".jpg", ".png", ".bmp")
    to_format = "png"
    
    for fn in os.listdir('.'):
         if os.path.isfile(fn) and fn.lower().endswith(from_format):
            print "Converting File: %s" % fn
            im = Image.open(fn)
            im.save(fn.split('.')[0] + '.' + to_format, to_format.upper())
    

And if you want read more about the Image module: http://effbot.org/imagingbook/image.htm

Solution 16 - Android

I faced this problem when I copied my images (no matter JPEG or PNG) into the drawable folder manually. There might be different kinds of temporary solutions to this problem, but one best eternal way is to use the Drawable importer plugin for Android studio.

Install it by going to: menu FileSettingsPluginsBrowse Repositories → search "Drawable". You'll find Drawable importer as the first option. Click install on the right panel.

Use it by right clicking on the Drawable resource folder and then new. Now you can see four new options added to the bottom of the list, and among those you will find your appropriate option. In this case the "Batch drawable import" would do the trick.

Solution 17 - Android

I changed the location of the app and copied it to a short path. You can do that by just copying your project and pasting it to a new Short Location. And, it worked for me.

For example,

Old_path: c/:user/android_studio_project/your_app
New_path: c/:your_app

Solution 18 - Android

I got this issue after migration to Gradle 3.3, on Windows (with gradle-2.14.1 everything was fine).

The problem was in the path to the Gradle build-cache, which contains Cyrillic characters, like

C:\Users\Иван\.android\build-cache

So I renamed the user's folder to "Ivan", and the problem was gone.

Solution 19 - Android

It seems to be a nasty problem of Gradle. We just upgraded from 2.14 to 3.3 and our build server couldn't build any more (a local build in Android Studio worked).

Error with too long path shows for example:

> C:\Windows\System32\config\systemprofile.gradle\caches\3.3\scripts-remapped\build_bonsjy48fqq8sotonpgrvhswt\36ejadunoxgw3iugkh95lqw\projedd7e29570ae79482d0308d82f4e346b\classes\build_bonsjy48fqq8sotonpgrvhswt$_run_closure1$_closure8$_closure13$_closure14$_closure15.class

We had to create a local user account for the service that ran as system service for years... Now it saves under C:\Users... which is much shorter as the system profile path.

Solution 20 - Android

> File > Invalidate Caches / Restart

Solution 21 - Android

Closing Android Studio and opening again solved this issue in my case.

Give it a try. I know it is not the right solution or answer, but it works. I am not sure about the root cause. It would be great if someone can share that.

Solution 22 - Android

I was importing an Android application in Android Studio (Gradle version 2.10) from Eclipse. The drawable images are not supported, then manually remove those images and paste some PNG images.

And also update the Android drawable importer from the Android repository. Then clean and rebuild the application, and then it works.

Solution 23 - Android

This error was caused for me because of the path where my project was located. There was a blank space in one folder, for example,

Folder\Another Folder\MyAndroidProjects\...

Changing it to Folder\AnotherFolder\MyAndroidProjects\... and resynchronising Gradle resolved this for me.

Solution 24 - Android

I have faced this problem also, and it has not been solved by reformatting the image although it was an image from a project app of Google, and it was only solved by:

Moving the project file to the partition directly

Try it. It might help you.

Solution 25 - Android

In my case I reached the solution in two steps:

  1. Keep your project name, package name, folder names short, because if the directory name exceeds 255 characters it gives the mergeResource error.
  2. Keep your drawables in the drawable folders. Any drawable file such as .jpg and .png outside the drawable folders throws the mergeResource folder error.

Solution 26 - Android

I am also suffering from the same issue. In my case I just copied the image to the drawable folder, then Android Studio is showing the error "Some file crunching failed".

My problem regarding to image only because that image was saved from the one of the my customized camera application in .png format. And for testing purposes I copied it into the drawable folder.

After that I tested saving the image as .jpg. It was not giving any error. That means the camera by default supports the ".jpg" format.

Finally I realized two things:

  1. The camera by default supports the ".jpg" format

  2. Without using image tools, don't change the image formats (even programmatically).

Solution 27 - Android

Just add this to your local.properties file of your project:

BUILD_DIR=C\:\\Tmp

(The error in Windows is due a long path, so I gave the path to one temporary folder.)

Solution 28 - Android

For me, it is because one of my .png files is actually a .psd file. Resave it to real PNG file, and it is fixed.

Solution 29 - Android

For me, it was a corrupted PNG file.

Go to your res folder and try to open every image. When you find an image which can't be opened, replace it with a good image.

Solution 30 - Android

It took a lot of investigation to figure this out, but the root cause of this issue, in my case, turned out to be that the processor of my dev machine is no longer supported by Android Studio. Please see this this issue for more details.

The issue manifests itself as errors related to *.9.png files, but in reality the problem is that Android Studio no longer works on processors that don't support SSSE3 instructions (AMD Phenom, Athlon and older processors, for instance). There doesn't seem to be any workaround at this time.

Solution 31 - Android

As this can be cause by many different issues for me it was in several layout files I had defined the layout_width and layout_height in the parent layout and the actual implementing layout below.

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:bind="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

<FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

Best way to find out is running gradle manually with a Stacktrace

Solution 32 - Android

To solve this problem you should use drawable -> new -> image asset and then add your images. You will then find the mipmap folder contains your images, and you can use it by @mibmab/img.

Solution 33 - Android

  1. Look at the folders drawable-hdpi, drawable-mdpi, drawable-xhdpi and so on.
  2. If there is a wrong bitmap file, Delete it and resave.
  3. Go to Build->Rebuild Project

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionbot.rubiksView Question on Stackoverflow
Solution 1 - AndroidsmoothumutView Answer on Stackoverflow
Solution 2 - AndroidLakhan SharmaView Answer on Stackoverflow
Solution 3 - Androidanand krishView Answer on Stackoverflow
Solution 4 - AndroidKadir ErturkView Answer on Stackoverflow
Solution 5 - AndroidHeberthView Answer on Stackoverflow
Solution 6 - AndroidSID --- Choke_de_CodeView Answer on Stackoverflow
Solution 7 - AndroidLearning AlwaysView Answer on Stackoverflow
Solution 8 - AndroidGuilherme RamosView Answer on Stackoverflow
Solution 9 - AndroidMaksim TuraevView Answer on Stackoverflow
Solution 10 - AndroidmattlaabsView Answer on Stackoverflow
Solution 11 - AndroidMapsyView Answer on Stackoverflow
Solution 12 - AndroidAskQView Answer on Stackoverflow
Solution 13 - AndroidelifekizView Answer on Stackoverflow
Solution 14 - Androidrychrist88View Answer on Stackoverflow
Solution 15 - AndroidMercuryView Answer on Stackoverflow
Solution 16 - AndroidAmiNadimiView Answer on Stackoverflow
Solution 17 - AndroidCrime_Master_GoGoView Answer on Stackoverflow
Solution 18 - AndroidIvanPView Answer on Stackoverflow
Solution 19 - AndroidThe incredible JanView Answer on Stackoverflow
Solution 20 - AndroidKhanView Answer on Stackoverflow
Solution 21 - AndroidSunil PurushothamanView Answer on Stackoverflow
Solution 22 - AndroidMuruView Answer on Stackoverflow
Solution 23 - AndroidMarcusView Answer on Stackoverflow
Solution 24 - AndroidDasser BasyouniView Answer on Stackoverflow
Solution 25 - AndroidDiRiNoiDView Answer on Stackoverflow
Solution 26 - AndroidKona SureshView Answer on Stackoverflow
Solution 27 - AndroidRATHIView Answer on Stackoverflow
Solution 28 - AndroidKai WangView Answer on Stackoverflow
Solution 29 - AndroidFloris MView Answer on Stackoverflow
Solution 30 - AndroidVijayendra VasuView Answer on Stackoverflow
Solution 31 - AndroidSn0wfreezeView Answer on Stackoverflow
Solution 32 - AndroidWessam Hassan RagabView Answer on Stackoverflow
Solution 33 - AndroidbrianView Answer on Stackoverflow