40

I have a lot of different flavors for my build that have specific resources and I don't want to clutter my src directory in my project with a bunch of flavor-specific directories, so I add the source sets from another folder in my project prior to the mergeResources task (mergeResources.doFirst). This has always worked for the past several versions of the Android Gradle plug-in (3.1.0-3.2.0 and some of the 3.3.0-alpha versions), but at a certain point, the 3.3.0-alpha AGP started causing build failures during this mergeResources task.

Now I keep getting:

BUILD FAILED in 35s 16 actionable tasks: 15 executed, 1 up-to-date Exception in thread "ForkJoinPool.commonPool-worker-6" java.lang.IllegalStateException: AAPT Process manager cannot be shut down while daemons are in use at com.android.builder.internal.aapt.v2.Aapt2DaemonManager.shutdown(Aapt2DaemonManager.kt:96) at com.android.build.gradle.internal.res.namespaced.RegisteredAaptService.shutdown(Aapt2DaemonManagerService.kt:61) at com.android.build.gradle.internal.workeractions.WorkerActionServiceRegistry$shutdownAllRegisteredServices$1$1.run(WorkerActionServiceRegistry.kt:96) at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402) at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)

My stacktrace is:

Execution failed for task ':app:mergeMainReleaseResources'. java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2InternalException: AAPT2 aapt2-3.3.0-alpha13-5013011-windows Daemon #0: Unexpected error during compile 'C:\Users\Alex\Documents\Work\Android\project\app\productio n_resources\categories\fitness\res\drawable-xxxhdpi\background_4.png', attempting to stop daemon. This should not happen under normal circumstances, please file an issue if it does.

Exception is: org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:mergeMainReleaseResources'. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:110) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77) at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51) at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59) at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54) at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59) at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101) at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44) at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91) at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62) at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59) at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54) at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51) at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300) at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292) at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174) at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90) at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46) at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262) at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135) at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130) at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200) at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191) at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)

Caused by: org.gradle.internal.UncheckedException: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2InternalException: AAPT2 aapt2-3.3.0-alpha13-5013011-windows Daemon #0: Unexpected error during compile 'C:\Users\Alex \Documents\Work\Android\project\app\production_resources\categories\fitness\res\drawable-xxxhdpi\background_4.png', attempting to stop daemon. This should not happen under normal circumstances, please file an issue if it does. at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:63) at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:40) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:76) at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:50) at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39) at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131) at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300) at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292) at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174) at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90) at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99) ... 31 more Caused by: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2InternalException: AAPT2 aapt2-3.3.0-alpha13-5013011-windows Daemon #0: Unexpected error during compile 'C:\Users\Alex\Documents\Work\Android\project\app\ production_resources\categories\fitness\res\drawable-xxxhdpi\background_4.png', attempting to stop daemon. This should not happen under normal circumstances, please file an issue if it does. at com.android.ide.common.workers.ExecutorServiceAdapter.close(ExecutorServiceAdapter.kt:56) at com.android.build.gradle.internal.aapt.WorkerExecutorResourceCompilationService.close(WorkerExecutorResourceCompilationService.kt:67) at com.android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources.java:268) at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:106) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73) ... 42 more

Caused by: com.android.builder.internal.aapt.v2.Aapt2InternalException: AAPT2 aapt2-3.3.0-alpha13-5013011-windows Daemon #0: Unexpected error during compile 'C:\Users\Alex\Documents\Work\Android\project\app\production_resources\categories\fitness\res\drawable-xxxhdpi\background_4.png', attempting to stop daemon. This should not happen under normal circumstances, please file an issue if it does. at com.android.builder.internal.aapt.v2.Aapt2Daemon.handleError(Aapt2Daemon.kt:148) at com.android.builder.internal.aapt.v2.Aapt2Daemon.compile(Aapt2Daemon.kt:88) at com.android.builder.internal.aapt.v2.Aapt2DaemonManager$LeasedAaptDaemon.compile(Aapt2DaemonManager.kt:170) at com.android.build.gradle.internal.res.Aapt2CompileWithBlameRunnable$run$1.invoke(Aapt2CompileWithBlameRunnable.kt:37) at com.android.build.gradle.internal.res.Aapt2CompileWithBlameRunnable$run$1.invoke(Aapt2CompileWithBlameRunnable.kt:28) at com.android.build.gradle.internal.res.namespaced.Aapt2DaemonManagerService.useAaptDaemon(Aapt2DaemonManagerService.kt:71) at com.android.build.gradle.internal.res.namespaced.Aapt2DaemonManagerService.useAaptDaemon$default(Aapt2DaemonManagerService.kt:69) at com.android.build.gradle.internal.res.Aapt2CompileWithBlameRunnable.run(Aapt2CompileWithBlameRunnable.kt:34) at com.android.ide.common.workers.ExecutorServiceAdapter$submit$submission$1.run(ExecutorServiceAdapter.kt:39)

Caused by: java.io.IOException: AAPT2 process unexpectedly exit. Error output: at com.android.builder.internal.aapt.v2.Aapt2DaemonImpl$WaitForTaskCompletion.err(Aapt2DaemonImpl.kt:309) at com.android.builder.internal.aapt.v2.Aapt2DaemonImpl$processOutput$1.err(Aapt2DaemonImpl.kt:75) at com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)

I thought maybe the PNG file was corrupted or incorrectly labeled, but I've run it through a whole bunch of conversions and I get the same error.

During testing, it works fine, but during the release builds is when I get this error. I've resorted to building using AS 3.2 and AGP 3.2.0 for my production builds, which works fine. Also, this is Windows only. It works fine on my Mac.

My build.gradle is:

apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion '28.0.3'
    defaultConfig {
        applicationId "com.project.test"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode 37
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
    }

    dexOptions {
        jumboMode true
        javaMaxHeapSize "4g"
        preDexLibraries = false
    }

    sourceSets {

        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')

        androidTest.setRoot('tests')
    }

    signingConfigs {

        key {
            storeFile file(RELEASE_STORE_FILE)
            storePassword RELEASE_STORE_PASSWORD
            keyAlias RELEASE_KEY_ALIAS
            keyPassword RELEASE_KEY_PASSWORD
        }

    }

    buildTypes {

        debug {
            minifyEnabled false
        }

        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.key
        }
    }

    flavorDimensions "default"

    productFlavors {

        main {
            versionName "0"
            buildConfigField "String", "CATEGORY", "\"fitness\""
            buildConfigField "String", "BUILD_VERSION", "\"$config.buildVersion\""
            dimension "default"
        }

        flavors.each { name, flavor ->
            "$name" {
                applicationId = config.applicationId + "." + "$name"
                versionName = config.versionName
                versionCode = flavor.versionCode
                buildConfigField "String", "CATEGORY", "\"${flavor.category}\""
                buildConfigField "String", "BUILD_VERSION", "\"$config.buildVersion\""
                buildConfigField "String", "APP_ID", "\"$name\""
                resValue "string", "APP_NAME", flavor.appName
                dimension "default"
            }
        }

    }

    packagingOptions {
        exclude 'META-INF/rxjava.properties'
    }

    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:3.0.1'
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    androidTestImplementation('com.android.support.test.espresso:espresso-core:3.0.1', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    androidTestImplementation('com.android.support.test:runner:1.0.1', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    implementation 'com.google.code.findbugs:jsr305:3.0.2'
    implementation "com.android.support:appcompat-v7:$rootProject.supportLibraryVersion"
    implementation "com.android.support:support-v4:$rootProject.supportLibraryVersion"
    implementation "com.android.support:design:$rootProject.supportLibraryVersion"
    implementation "com.android.support:cardview-v7:$rootProject.supportLibraryVersion"
    implementation "com.android.support:customtabs:$rootProject.supportLibraryVersion"
    implementation 'com.android.support:multidex:1.0.3'
    implementation 'com.android.billingclient:billing:1.1'
    implementation "com.squareup.retrofit2:retrofit:$rootProject.retrofitVersion"
    implementation "com.squareup.retrofit2:converter-gson:$rootProject.retrofitVersion"
    implementation "com.squareup.retrofit2:adapter-rxjava2:$rootProject.retrofitVersion"
    implementation 'com.squareup.okhttp3:okhttp:3.11.0'
    implementation 'com.google.code.gson:gson:2.8.5'
    implementation "com.facebook.fresco:fresco:$rootProject.frescoVersion"
    implementation "com.facebook.fresco:animated-gif:$rootProject.frescoVersion"
    implementation "com.google.android.gms:play-services-auth:$rootProject.playServicesVersion"
    implementation "com.google.android.gms:play-services-gcm:$rootProject.playServicesVersion"
    implementation "com.google.android.gms:play-services-base:$rootProject.playServicesVersion"
    implementation "com.google.android.gms:play-services-ads:$rootProject.playServicesVersion"
    implementation('com.crashlytics.sdk.android:crashlytics:2.9.4@aar') {
        transitive = true
    }
    implementation 'com.mixpanel.android:mixpanel-android:5.2.1'
    implementation "com.google.dagger:dagger:$rootProject.daggerVersion"
    implementation "com.google.dagger:dagger-android-support:$rootProject.daggerVersion"
    annotationProcessor "com.google.dagger:dagger-compiler:$rootProject.daggerVersion"
    implementation "com.jakewharton:butterknife:$rootProject.butterknifeVersion"
    annotationProcessor "com.jakewharton:butterknife-compiler:$rootProject.butterknifeVersion"
    implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
    implementation 'io.reactivex.rxjava2:rxjava:2.2.0'
    implementation 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
    implementation "com.google.android.exoplayer:exoplayer-core:$rootProject.exoPlayerVersion"
    implementation "com.google.android.exoplayer:exoplayer-hls:$rootProject.exoPlayerVersion"
    implementation "com.google.android.exoplayer:exoplayer-ui:$rootProject.exoPlayerVersion"
    testImplementation 'junit:junit:4.12'
}

android.applicationVariants.all { variant ->
    def category
    variant.productFlavors.each { flavor ->
        flavor.buildConfigFields.each { key, value ->
            if (key == "CATEGORY") {
                category = value.value.substring(1, value.value.length() - 1)
            }
        }
    }
    variant.mergeResources.doFirst {
        android.sourceSets."${variant.productFlavors.get(0).name}".res.srcDirs =
                ["production_resources/flavors/${variant.productFlavors.get(0).name}/res",
                 "production_resources/categories/${category}/res"]
    }
}

afterEvaluate {
    tasks.matching {
        it.name.startsWith('dex')
    }.each { dx ->
        if (dx.additionalParameters == null) {
            dx.additionalParameters = []
        }
        dx.additionalParameters += '--multi-dex'
        dx.additionalParameters += "--main-dex-list=$projectDir/<filename>".toString()
    }
}

apply plugin: 'com.google.gms.google-services'
akong9759
  • 413
  • 1
  • 4
  • 7
  • Oooh this looks super interesting. Would you mind filing an issue on issue tracker so that the Android Studio team can have a look? – Izabela Orlowska Oct 16 '18 at 10:14
  • 2
    @IzabelaOrlowska I've posted the issue to the tracker. https://issuetracker.google.com/issues/117900475 – akong9759 Oct 18 '18 at 19:34
  • thanks for filling the issue! – Izabela Orlowska Oct 18 '18 at 20:07
  • Got the same after updating to 3.3.0 from 3.2.1. Cleaned everything (cache, Gradle folder) - no luck. Works on Mac but fails on Windows. Which is super sad as I have always done the Android development on Windows, it worked faster there. The resource that fails has size over 2MB. – NeverwinterMoon Feb 03 '19 at 10:12
  • Also, it has nothing to do with Android Studio 3.3 directly. I was able to use AS 3.3 but had to use AGP 3.2.1 for compilation to work on Windows. – NeverwinterMoon Feb 03 '19 at 13:20

13 Answers13

70

Updated 19th April, 2019

This issue has been fixed in Android Gradle Plugin 3.4.0.

After upgrading to Android Studio 3.4.0, the temporary fix suggested in the original answer can be removed. Hurray!

Original

This is a bug in AAPT2 in Android Gradle Plugin 3.3.0, when building a project with larger png's (around 2-3 mb and up).

@akong9759 created an issue for this on Googles issue tracker and it has been fixed.

https://issuetracker.google.com/issues/117900475

The problem has been fixed in Android Gradle Plugin 3.5.0-alpha03 and the fix is scheduled to be released in version 3.4.0.

A temporary fix for Android Gradle Plugin 3.3.0 has been suggested on the issue. Add the following to the project build.gradle:

allprojects {
    // Workaround for https://issuetracker.google.com/117900475
    // Remove when upgrading to AGP 3.4 or higher.
    configurations.matching { it.name == '_internal_aapt2_binary' }.all { config ->
        config.resolutionStrategy.eachDependency { details ->
            details.useVersion("3.5.0-alpha03-5252756")
        }
    }
}
Mahdi Bashirpour
  • 17,147
  • 12
  • 117
  • 144
  • 1
    Until 3.4.0 comes out this seems to be the best answer, Worked like a charm! – FrankKrumnow Feb 22 '19 at 15:43
  • I've tried adding this in my project build.gradle but it doesn't fix anything. I'm curious..does configures.matching need to replace the existing configurations.all part? – VK1 Apr 05 '19 at 05:02
  • 1
    If you're using nativescript this currently is still the only feasible solution. Thanks for sharing! – briosheje May 13 '19 at 07:56
  • 3
    Today I updated studio to 3.4.0, gradle plugin to 3.4.0, 5.1.1 in distribution URL. After doing this update, i got an error: "AAPT2 aapt2-3.5.0-alpha03-5252756-windows Daemon #7: Daemon startup failed". Please help. – TechHelper Jun 15 '19 at 17:06
  • 1
    It seems to be the only actual solution for Cordova too – Sebj Sep 05 '19 at 14:14
  • 1
    I have Android Studio Version 4.2.2 but I am getting the same error now I added the given code in build.gradle file now I found it is working without any error. – Dr NVS Jul 20 '21 at 16:01
27

I had the same issue. The build would break and mention different png files, like your background_4.png, but only on a Windows PC. The build on a Mac had no problems.

In my case the image size was the problem. Only images bigger than 2MB seamed to break the build. After reducing every image to something lesser than 2MB the build started working again.

Stefan Lösing
  • 371
  • 3
  • 3
  • 1
    Confirmed, also having that issue since I switched to Windows from GNU/Linux. Reducing the size to something lower than 2MB indeed solved the issue. I wonder why that happes though, and maybe if there's a way to tweak it somehow to correctly work with such images – Ivan Semkin Jan 31 '19 at 19:01
  • It's a nice find, but considering that everything worked with 2.2.1 and works just fine with 3.3.0 on Mac with the same project, I certainly am not eager to reduce my file sizes. It looks like a bug on "their" side. – NeverwinterMoon Feb 03 '19 at 10:15
  • 1
    Worked for me too. Unbelievable. I just converted all my assets to .webp's and it built just fine. – rjr-apps Feb 06 '19 at 18:07
4

Check your layout xml files carefully in my case issue was duplicate xml

<?xml version="1.0" encoding="utf-8"?>
jatin rana
  • 825
  • 1
  • 9
  • 21
  • It's not an issue with XML, but with trying to swap out png files. All my XML resources are fine, otherwise it wouldn't work on my Mac or older versions of AS. – akong9759 Jan 02 '19 at 21:21
3

You need to verify your layout.xml files. There may be something wrong. I got same error and fixed issue on layout file. It worked for me.

Arti Patel
  • 671
  • 4
  • 15
1

i had the same issue while working with android 3.5.3 and the above solution didn't work with me but i found that android studio cant link between the color and vector images my code in vector looked like that

<vector android:height="84dp" android:tint="@color/colorPrimary"
    android:viewportHeight="24.0" android:viewportWidth="24.0"
    android:width="84dp" xmlns:android="http://schemas.android.com/apk/res/android">
    <path android:fillColor="@color/colorPrimary" android:pathData="M8,5v14l11,-7z"/>
</vector>

when i changed @color/colorPrimary to the color code #F44336 it worked fine

<vector android:height="84dp" android:tint="#F44336"
    android:viewportHeight="24.0" android:viewportWidth="24.0"
    android:width="84dp" xmlns:android="http://schemas.android.com/apk/res/android">
    <path android:fillColor="#F44336" android:pathData="M8,5v14l11,-7z"/>
</vector>

i hope this helps

1

In my case the issue was in Target Level API.

By default API 34 was set.

After changing it to API 33 gradle built my project.

Probably the root cause is API 34 in beta at this moment.

Hope this will help if you are strugging a whole day like I am.

hidd
  • 336
  • 3
  • 11
0

You need to clean up your older caches of gradle and maven dependencies. E.g, try to delete the files under .m2 and .gradle and then Invalidate Caches / Restart ...

Also, can try to disable enableAapt2 by setting it to false inside gradle.properties

android.enableAapt2=false
shizhen
  • 12,251
  • 9
  • 52
  • 88
0

From the log It looks like one of your png image might be corrupt, Try replace or remove it and try to build.

\res\drawable-xxxhdpi\background_4.png
karan
  • 8,637
  • 3
  • 41
  • 78
  • Is there any way to confirm that it's corrupted or fix the file itself? I've tried opening it in an image editor and exporting as a png, but that didn't fix it. – akong9759 Oct 12 '18 at 18:28
0

If you would change variants it would automatically configure itself... Means if you are going run free(Choose from built Variants) then paid flavor will be red and Vice-Versa.

maneeshsagar
  • 101
  • 5
0

After spending a long day on the issue, I have solved it by simply fetching the GIMP and converting the PNG files into JPG, as suggested by someone in google issue tracking.

It worked miracles, and I did not have to change any other file, package version or setting.

Umur Karagöz
  • 2,970
  • 1
  • 19
  • 29
0

For me delete all build folders and restart system and reopen Android Studio works in debug mode.

Update:

One of my png was giving error : error: failed to read PNG signature: file does not start with PNG signature I open and export again in png. Now it is working with every build variant. And Delete one zero byte png. Anyone make it beautiful if works/ Thanks

Qamar
  • 4,959
  • 1
  • 30
  • 49
0

I resolved this problem after reduce the image size.

  • noted size difference between the image who caused the problem and other images, you will found it great in size.
Ayoub Anbara
  • 407
  • 5
  • 10
0

Solution:-

Just deleted drawable-xxxhdpi\background_4.png and re-generated android resources by running ionic cordova resources android --force

Manoj Alwis
  • 1,337
  • 11
  • 24