Android Quality Verifier
Android Quality Verifier
Static code analysis plugin for Android projects. This is a fork of the original android-check plugin, which implements a really useful concept.
Usage
This plugin is available in jCenter. It attaches itself to the check
task if it finds it (that is, you don’t use the plugins
block and you apply either the application or library Android plugins first) – otherwise you’ll need to execute the corresponding tasks manually when desired: androidCheckstyle
for CheckStyle, androidFindbugs
for FindBugs, CPDTask
for CPD and androidPmd
for PMD.
Configuration
Install
Add to main build.gradle:
buildscript {
...
dependencies {
...
classpath 'pt.simdea.verifier:verifier:(last version)'
...
}
...
}
add to app build.gradle:
apply plugin: 'pt.simdea.verifier'
Recommended
The default one.
Customized
// Configuration is completely optional, defaults will be used if not present
check {
// Do absolutely nothing, default: false
skip true/false
// Fails build if a violation is found, default: true
abortOnError true/false. //Ignored if all per-tool confs are set to abortOnError false (see below)
// Checkstyle configuration
checkstyle {
// Completely skip CheckStyle, default: false
skip true/false
// Fails build if CheckStyle rule violation is found, default: false
abortOnError true/false
// Configuration file for CheckStyle, default: <project_path>/config/checkstyle.xml, if non-existent then <project_path>/<module_path>/config/checkstyle.xml, if non-existent then plugin/src/main/resources/checkstyle/conf-default.xml
config 'path/to/checkstyle.xml'
// Output file for XML reports, default: new File(project.buildDir, 'outputs/checkstyle/checkstyle.xml')
reportXML new File(project.buildDir, 'path/where/you/want/checkstyle.xml')
// Output file for HTML reports, default: not generated
reportHTML new File(project.buildDir, 'path/where/you/want/checkstyle.html')
}
// Cpd configuration
cpd {
// Same options as Checkstyle
}
// FindBugs configuration
findbugs {
// Same options as Checkstyle
}
// PMD configuration
pmd {
// Same options as Checkstyle
}
// Lint configuration
lint {
// Same vars of android lint options
}
}
License
See LICENSE.txt.
Original work licensed under MIT license.