当前位置: 代码迷 >> 综合 >> Lint found fatal errors while assembling a release target的解决方案
  详细解决方案

Lint found fatal errors while assembling a release target的解决方案

热度:4   发布时间:2024-01-29 23:35:00.0

之前执行代码一直没有问题,打debug包也不会报错,然后昨天上线打正式包的时候,突然就报了一个匪夷所思的问题

Lint found fatal errors while assembling a release target.To proceed, either fix the issues identified by lint, or modify your build script as follows:
... 
android {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}
}

大体翻译下是
在发布版本中找到了一个很严重的错误
你可以去解决这个在lint发现的问题,或者修改生成脚本
android {
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
}
}

寻找原因

赶紧打开百度,把Lint found fatal errors while assembling a release target.搜索一遍,然后一水的把上面两句话加到项目里就解决了。
android studio都告诉你了,是个致命的错误,就这么忽略了,真的好吗?
辛亏我们有良好的提交代码的习惯,于是乎我在git上一个版本一个版本的打包,找到了开始出现这个异常的版本,发现在一段代码中有两行可以忽略的异常
在这里插入图片描述

这两句代码,是由于强行引用第三方arr文件下res目录下面控件造成的,原因是因为第三方id为btnSubmit和btnCancel的两个button和我们自己写的布局文件id相同的两个TextView一致,编辑器以为你强行引用错误了,所以在打包release时报错

解决方案

在这里插入图片描述
告诉编辑器,这里有代码是错误的view检测
再次打包,就成功了!

思考

其实这个问题就是因为代码编写习惯不良好造成的
所以要:

  1. :代码命名要规范

  2. :及时检测有红线的代码,不要因为可以编译过去,就无视

  3. :有时候这个问题会指出错误在哪,可以通过编辑器报出的错误信息去解决

  相关解决方案