如题,报出此错误:
aapt2.Aapt2Exception: AAPT2 error: check logs for details
网上普遍的解决方案:
在项目的gradle.properties中添加android.enableAapt2=false在build.gradle文件中添加:
aaptOptions.cruncherEnabled = false
aaptOptions.useNewCruncher = false
有时候添加这些并不能解决这个报错,因此,你需要去检查具体报错原因,步骤如下:
第一:进入Gradle Console查看具体信息,如图:

第二:分析报错原因,如图:

第三:根据报错,做出对应的修改,如图:

我这边报出这个错误主要是ES转AS时,.9类型图片出错所导致的,修改这个错误很简单:
要么去掉.9后缀(这个不推荐,可能出现界面不和谐的问题);
要么重新切图,或者向我上图一样,在以前标识的可拉伸外面重新点上一层新的可拉伸标识(注:可能会影响美观,因此之前.9的拉伸标识成为了图片的一部分,不过不会因为不能拉伸而出现界面不和谐的情况);
最好的方式,让UI重新切一张.9图,或者自己动手!
修改对应图片之后,sync后就编译通过了。
希望对相同问题困扰的同行所有帮助!
网友评论