真正解决方案:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error:

开发安卓应用的时候,你可能遇到 这个错误

Error:java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details

故障原因:

  1. 修改了布局文件,但是在别的地方调用了,导致找不到该资源ID
  2. 引入了错误类型的图片文件,比如图片文件是gif格式强制修改成png 格式后引入
  3. 某资源在values-zh-rCN定义然而在values-en-rUS中没有定义

解决方案:

  1. 前两种情况可以通过排查解决

  2. 第3种资源适配引入问题可以在 build-gradle 配置这个参数进行解决

lintOptions {
  checkReleaseBuilds false
  abortOnError false
}

示例代码:

android{
        buildTypes {
                release {
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }
            }
          lintOptions {
            checkReleaseBuilds false
            // Or, if you prefer, you can continue to check for errors in release builds,
            // but continue the build even when errors are found:
            abortOnError false
    }
}

终极绝招

按照下图所示,点击下Build 然后点击锤子图标,可显示详细的错误信息

这里写图片描述

猜你喜欢

转载自blog.csdn.net/hadues/article/details/81053550