Android:解决AAPT2 error: failed linking file resources的正确操作

想起一句很有哲理的话:羊毛出在羊身上,一切的存在都是有原因的
开玩笑。
步入正题。

错误描述

  R文件突然爆红,Clean等全都没有作用。
  报如下错误:
Android:解决AAPT2 error: failed linking file resources的正确操作_第1张图片
Android:解决AAPT2 error: failed linking file resources的正确操作_第2张图片

错误原因

  总之,很多。
  有的是因为.9图片的原因,有的是因为资源不存在,有的因为导入项目等等。
  总之,原因不重要,重要的是正确的解决方案。

网上的错误方案

  不怕真理不对,就怕假道理说成真理 。
  在这个错误里,没有给报错的文件定位,所以这成了解决这个bug的一大障碍。最直观的就是能看到AAPT2 error。
  所以,直接去搜这个错误,网上会有好多一致的解决方案:

project的根目录下的gradle.properties最后添加关闭aapt2的代码:android.enableAapt2=false

  首先,这有可能会生效,因为这是很硬核的解决方案,但绝不是一个正确的解决方案。

正确操作

Android:解决AAPT2 error: failed linking file resources的正确操作_第3张图片
  点一下这个小按钮,可以看到build的文本执行流程。在这里我们可以发现一些信息。
Android:解决AAPT2 error: failed linking file resources的正确操作_第4张图片
  在这里不仅标出了具体未通过编译的错误,还指出了文件位置。
  然后,顺藤摸瓜,去排查此文件。
  然后发现:
Android:解决AAPT2 error: failed linking file resources的正确操作_第5张图片
  在这里的textColor写错了,改正一下,再次编译。

Android:解决AAPT2 error: failed linking file resources的正确操作_第6张图片
  成功。
  出错的地方可能不一样,但你可以按照这个步骤进行排查,总会解决问题。
  加油!
Android:解决AAPT2 error: failed linking file resources的正确操作_第7张图片

你可能感兴趣的:(Android)