Android lint工具是一个静态代码分析工具,检查你的Android项目源文件潜在的bug,并优化改进,确保正确性、安全性、性能、可用性、可访问性和国际化。
除了测试你的Android应用程序满足其功能需求,重要的是要确保你的代码没有结构性问题。代码结构简陋的可靠性和效率的影响你的Android应用程序,使您的代码很难维护。例如,如果您的XML资源文件包含未使用的名称空间,这占用空间并产生不必要的处理。其他的结构性问题,比如使用弃用元素或API调用所不支持的目标API版本,可能会导致代码未能正确地运行。
Android SDK提供了一个代码扫描工具,称为lint。可以帮助您轻松地识别并纠正问题与结构质量的代码,不必执行应用程序或编写任何测试用例。每个问题检测到该工具报告的一个描述消息和严重性级别,您可以快速地优先考虑的关键改进。您还可以配置一个问题的严重性级别,忽略不相关的问题,或提高的严重程度。这个工具有一个命令行接口,所以您可以很容易地集成到您的自动化测试过程。
Lint 工具可以检查你android工程潜在的bug和优化改进,以确保正确性、安全性、性能、可用性、可访问性和国际性。您可以从命令行运行lint,或eclipse中运行lint。
图1显示了如何使用lint工具处理工程中的源代码
图1 通过lint 工具扫描
源代码:
源文件,整个droid项目,java和XML文件,图片和混淆器配置文件。
lint.xml 文件:
lint 配置文件,用它来指定任何lint检查,你想排除和定制问题严重级别。
lint 检查的结果:
可以从控制台或者是eclipse的视图中查看结果。包含这个每个问题的表述和源文件发生的位置。
l 导出一个APK
l 编辑和保存一个XML源文件在你的Android项目(比如清单或布局文件)
l 在eclipse中更改布局文件(使用布局编辑器在Eclipse中进行更改)
注意,当导出一个APK,lint工具只自动检查程序中致命的错误。如果发现致命的错误,导出APK将会终止。你可以关掉lint自动错误检查,在eclipse的选项中。
输出结果显示在lint的警告视图中。如果lint警告视图没有显示在workbench中。你可以把它从eclipse的菜单中拖出来。
Window>Show wiew>Other>Android>Lintwarings
图2 是lint wargings 输出的例子
您还可以手动运行lint扫描在你的Android项目,在Eclipse中通过右键单击项目文件夹,Package Explorer Explorer>Android Tools> Android lint: check for common Errors
运行lint命令,检查工程中的问题
lint [flags]
例如:你可以执行一个命令,只扫描工程及子目录的中文件的xml属性缺失和空间前缀。
lint –check MissingPrefix myproject
查看完整的命令列表和参数:
lint –help
默认情况下,当你运行lint扫描,这个工具会检查所有的问题。你可以限制lint的检查,通过设置问题的严重程度。例如,您可以禁用lint检查特定的问题,无关你的项目和配置lint报告非关键问题在一个较低的严重程度。
你可以配置lint检查一下几个等级:
l Globally, for all projects(所有工程)
l Per project(每个工程)
l Per file(每个文件)
l Per Java class or method (byusing the @SuppressLint annotation), or per XML element (by usingthe tools:ignoreattribute.(每个java类、方法、xml文件)
配置 lint 文件
你可以指定lint检查的选项在lint.xml 文件。创建lint.xml文件放在Android工程的根目录下。
xml version="1.0" encoding="UTF-8"?>
例如:
xml version="1.0" encoding="UTF-8"?>
id="IconMissingDensityFolder" severity="ignore" />
id="ObsoleteLayoutParam">
path="res/layout/activation.xml" />
path="res/layout-xlarge/activation.xml" />
id="UselessLeaf">
path="res/layout/main.xml" />
id="HardcodedText" severity="error" />