使用Android Lint检查代码缺陷

背景

Android Lint 是Android自带的代码检查工具,它能帮助我们识别很多潜在的错误。

Lint 介绍

Android Lint 可以扫描android项目源代码中的潜在错误。它既可以作为命令行工具,也可以与Eclipse(如下所述)和Intellij(详细信息)集成。体系结构是有意独立于IDE的,因此它有望与其他IDE、其他构建工具以及持续集成系统集成。

下面是它查找的错误类型的一些示例:

  • 缺少转换(和未使用的转换)
  • 布局性能问题(旧布局工具用于查找的所有问题等)
  • 未使用的资源
  • 数组大小不一致(在多个配置中定义数组时)
  • 可访问性和国际化问题(硬编码字符串、缺少内容描述等)
  • 图标问题(如密度丢失、图标重复、大小错误等)
  • 可用性问题(如未在文本字段上指定输入类型)
  • 明显错误

它可帮助您发现并纠正代码结构质量的问题,而无需实际执行该应用,也不必编写测试用例。该工具会报告其检测到的每个问题并提供该问题的描述消息和严重级别,以便您可以快速确定需要优先进行哪些关键改进。此外,您可以调低问题的严重级别,忽略与项目无关的问题,也可以调高严重级别,以突出特定问题。

Lint 工具可检查您的 Android 项目源文件是否包含潜在错误,以及在正确性、安全性、性能、易用性、便利性和国际化方面是否需要优化改进。在使用 Android Studio 时,配置的 Lint 和 IDE 检查会在您每次构建应用时运行。

2044033-2897aa834cf4ef69.png
image.png

在命令行执行

./gradlew lint

加入仅仅仅仅检查 buildType=debug ,可以使用:

./gradlew lintDebug

执行完毕后,输入的内容如下:


2044033-13d7cd53794bc869.png
image.png

查看报告

报告位于:app/build/reports/lint-results.html
它可能长这样:

2044033-29de886f140b4b4c.png
image.png

接下来

查看报告,根据这些警告和提示修复代码,改进代码缺陷,提高代码质量。

我们可以将 Lint 工具集成到我们CI过程中去,构成研发体系的一部分。

扩展阅读

我们可能想做一些自定义设置,可以这么做

def configDir = "${project.rootDir}/config/quality"
def reportsDir = "${project.buildDir}/reports"

    android {
        lintOptions {
            abortOnError true
            xmlReport false
            htmlReport true
            lintConfig file("$configDir/lint/lint.xml")
            htmlOutput file("$reportsDir/lint/lint-result.html")
            xmlOutput file("$reportsDir/lint/lint-result.xml")
        }
    }

参考

https://developer.android.google.cn/studio/write/lint.html
https://sites.google.com/a/android.com/tools/tips/lint
https://www.jianshu.com/p/b4c44e62d652 这篇文章真的很详细。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值