Lint
除了测试 Android 的应用程序是否满足功能要求外,确定你的代码没有结构问题也相当重要。代码架构不完善会影响 Android 应用程序的可靠性和运行效率,同时也会使代码更难维护。比如, 如果你的 XML资源包含未使用的命名文件,这不仅占用了空间,还会招致不必要的处理工作。其他的结构问题,如使用过时代码,或者使用了不被目标 API 版本支持的 API 调用,这都 可能会导致代码无法正确运行
概览
Android Studio 提供了一款名叫 Lint 的代码扫描工具,它可以帮助你轻松识别并纠正你的代码结构质量问题,而且并不需要运行app或编写测试用例。该工具检查到的每个问题都会生成一份包含描述信息和严重等级的报告,因此你可以快速优先处理需要做的紧急改进。你还可以配置一个问题的严重程度以忽略与你项目不相关的问题,或提升严重级别。这个工具有一个命令行接口,因此你可以轻易将它集成到你的自动测试进程中。
Lint 工具为 潜在的bug和优化改进会 检查你的Android项目代码文件中的正确性、安全性、性能、可用性、可访问性以及国际化。你可以从命令行或Android Studio中运行Lint。
注意:在Android Studio中,当你的代码在Android Studio中编译时额外的 * IntelliJ code inspections * 会运行以简化代码审查。
下图展示了Lint工具是如何处理应用程序的源代码文件的。
应用程序源代码文件
源代码文件包含了那些构成你的Android工程的文件,包括 Java 和 XML文件,图标,以及 ProGuard 配置文件。
lint.xml 文件
这是一个配置文件,你可以用它来指定任何你想要排除出去的Lint检查,还有就是对问题的严重级别进行自定义。
Lint 工具
这是一个静态的代码扫描工具,你可以通过命令行或者 Android Studio来把它运行起来。Lint 工具会检查哪些可能会影响到Android应用程序质量及性能的结构方面的代码问题。我们强烈建议你在发布应用程序之前,先把Lint检测出来的错误 修正 。
Lint检查的结果
你可以在控制台或者 Android Studio 的事件日志( Event Log ) 中查看来自Lint的运行结果。每一个问题都会以其在源代码文件中检测到错误的位置进行标识,并附上针对问题的描述信息。
Lint 工具是作为 Android SDK工具版本16或者更高版本的一部分,已经自动被安装好了的。
在 Android Studio 中运行Lint
在 Android Studio 中, 配置好的 Lint 及 IDE 检查会在你构建应用时自动运行。IDE检查是跟着 Lint 检查一起配置的,运行 IntelliJ 代码检查 就可以精简代码的审查工作
注意:要查看和修改检查的问题严重界别的话,可以使用 File > Settings > Editor > Inspections 菜单来打开检查配置( Inspection Configuration )页,里面有一个支持检查项的清单 。
使用 Android Studio 的话, 你还可以针对特定的构建变量运行 Lint 检查, 或者也可以是来自 build.gradle 文件的所有变量。需要将 lintOptions 属性添加到构建文件的 android 设置中。下面这段代码来自于一个 Gradle 构建文件,它显示了如何将 quiet 选项设置成 true,将 abortOnError 选项设置成 false
android {
lintOptions {
// set to true to turn off analysis progress reporting by lint
quiet true
// if true, stop the gradle build if errors are found
abortOnError false