{"id":371,"date":"2017-08-01T22:07:09","date_gmt":"2017-08-01T22:07:09","guid":{"rendered":"http:\/\/simdea.pt\/?post_type=jetpack-portfolio&#038;p=371"},"modified":"2017-08-01T22:07:09","modified_gmt":"2017-08-01T22:07:09","slug":"android-quality-verifier","status":"publish","type":"jetpack-portfolio","link":"https:\/\/simdea.pt\/pt\/portfolio\/android-quality-verifier\/","title":{"rendered":"Android Quality Verifier"},"content":{"rendered":"<h1>Android Quality Verifier<\/h1>\n<p><a href=\"https:\/\/www.gitcheese.com\/donate\/users\/1757083\/repos\/87924699\"><img decoding=\"async\" src=\"https:\/\/camo.githubusercontent.com\/3b9218b472842c0993888bbfb52d9dead8ca88cf\/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746368656573652d75692d6d61737465722f696d616765732f62616467652e737667\" alt=\"gitcheese.com\" data-canonical-src=\"https:\/\/s3.amazonaws.com\/gitcheese-ui-master\/images\/badge.svg\" \/><\/a><\/p>\n<p>Static code analysis plugin for Android projects. This is a fork of\u00a0<a href=\"https:\/\/github.com\/stoyicker\/android-check-2\">the original android-check plugin<\/a>, which implements a really useful concept.<\/p>\n<h2>Usage<br \/>\n<a id=\"user-content-build-status\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#build-status\" aria-hidden=\"true\"><\/a><\/h2>\n<p>This plugin is available in jCenter. It attaches itself to the\u00a0<code>check<\/code>\u00a0task if it finds it (that is, you don&#8217;t use the\u00a0<code>plugins<\/code>\u00a0block and you apply either the application or library Android plugins first) &#8211; otherwise you&#8217;ll need to execute the corresponding tasks manually when desired:\u00a0<code>androidCheckstyle<\/code>\u00a0for\u00a0<a href=\"http:\/\/checkstyle.sourceforge.net\/\">CheckStyle<\/a>,\u00a0<code>androidFindbugs<\/code>\u00a0for\u00a0<a href=\"http:\/\/findbugs.sourceforge.net\/\">FindBugs<\/a>,\u00a0<code>CPDTask<\/code>\u00a0for\u00a0<a href=\"https:\/\/pmd.github.io\/pmd-5.7.0\/usage\/cpd-usage.html\">CPD<\/a>\u00a0and\u00a0<code>androidPmd<\/code>for\u00a0<a href=\"https:\/\/pmd.github.io\/\">PMD<\/a>.<\/p>\n<h2><a id=\"user-content-configuration\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#configuration\" aria-hidden=\"true\"><\/a>Configuration<\/h2>\n<h3><a id=\"user-content-install\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#install\" aria-hidden=\"true\"><\/a>Install<\/h3>\n<h5><a id=\"user-content-add-to-main-buildgradle\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#add-to-main-buildgradle\" aria-hidden=\"true\"><\/a>Add to main build.gradle:<\/h5>\n<div class=\"highlight highlight-source-groovy-gradle\">\n<pre><span class=\"pl-en\">buildscript<\/span> {\n    <span class=\"pl-k\">..<\/span>.\n    dependencies {\n        <span class=\"pl-k\">..<\/span>.\n        classpath <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>pt.simdea.verifier:verifier:(last version)<span class=\"pl-pds\">'<\/span><\/span>\n        <span class=\"pl-k\">..<\/span>.\n    }\n    <span class=\"pl-k\">..<\/span>.\n}<\/pre>\n<\/div>\n<h5><a id=\"user-content-add-to-app-buildgradle\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#add-to-app-buildgradle\" aria-hidden=\"true\"><\/a>add to app build.gradle:<\/h5>\n<div class=\"highlight highlight-source-groovy-gradle\">\n<pre>apply <span class=\"pl-c1\">plugin<\/span>: <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>pt.simdea.verifier<span class=\"pl-pds\">'<\/span><\/span><\/pre>\n<\/div>\n<h3><a id=\"user-content-recommended\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#recommended\" aria-hidden=\"true\"><\/a>Recommended<\/h3>\n<p>The default one.<\/p>\n<h3><a id=\"user-content-customized\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#customized\" aria-hidden=\"true\"><\/a>Customized<\/h3>\n<div class=\"highlight highlight-source-js\">\n<pre><span class=\"pl-c\">\/\/ Configuration is completely optional, defaults will be used if not present<\/span>\ncheck {\n  <span class=\"pl-c\">\/\/ Do absolutely nothing, default: false<\/span>\n  skip <span class=\"pl-c1\">true<\/span><span class=\"pl-k\">\/<\/span><span class=\"pl-c1\">false<\/span>\n  <span class=\"pl-c\">\/\/ Fails build if a violation is found, default: true<\/span>\n  abortOnError <span class=\"pl-c1\">true<\/span><span class=\"pl-k\">\/<\/span><span class=\"pl-c1\">false<\/span>. <span class=\"pl-c\">\/\/Ignored if all per-tool confs are set to abortOnError false (see below)<\/span>\n  \n  <span class=\"pl-c\">\/\/ Checkstyle configuration<\/span>\n  checkstyle {\n    <span class=\"pl-c\">\/\/ Completely skip CheckStyle, default: false<\/span>\n    skip <span class=\"pl-c1\">true<\/span><span class=\"pl-k\">\/<\/span><span class=\"pl-c1\">false<\/span>\n\n    <span class=\"pl-c\">\/\/ Fails build if CheckStyle rule violation is found, default: false<\/span>\n    abortOnError <span class=\"pl-c1\">true<\/span><span class=\"pl-k\">\/<\/span><span class=\"pl-c1\">false<\/span>\n\n    <span class=\"pl-c\">\/\/ Configuration file for CheckStyle, default: &lt;project_path&gt;\/config\/checkstyle.xml, if non-existent then &lt;project_path&gt;\/&lt;module_path&gt;\/config\/checkstyle.xml, if non-existent then plugin\/src\/main\/resources\/checkstyle\/conf-default.xml<\/span>\n    config <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>path\/to\/checkstyle.xml<span class=\"pl-pds\">'<\/span><\/span>\n\n    <span class=\"pl-c\">\/\/ Output file for XML reports, default: new File(project.buildDir, 'outputs\/checkstyle\/checkstyle.xml')<\/span>\n    reportXML <span class=\"pl-k\">new<\/span> <span class=\"pl-en\">File<\/span>(<span class=\"pl-smi\">project<\/span>.<span class=\"pl-smi\">buildDir<\/span>, <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>path\/where\/you\/want\/checkstyle.xml<span class=\"pl-pds\">'<\/span><\/span>)\n\n    <span class=\"pl-c\">\/\/ Output file for HTML reports, default: not generated<\/span>\n    reportHTML <span class=\"pl-k\">new<\/span> <span class=\"pl-en\">File<\/span>(<span class=\"pl-smi\">project<\/span>.<span class=\"pl-smi\">buildDir<\/span>, <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>path\/where\/you\/want\/checkstyle.html<span class=\"pl-pds\">'<\/span><\/span>)\n  }\n  \n  <span class=\"pl-c\">\/\/ Cpd configuration<\/span>\n  cpd {\n    <span class=\"pl-c\">\/\/ Same options as Checkstyle<\/span>\n  }\n  \n  <span class=\"pl-c\">\/\/ FindBugs configuration<\/span>\n  findbugs {\n    <span class=\"pl-c\">\/\/ Same options as Checkstyle<\/span>\n  }\n  \n  <span class=\"pl-c\">\/\/ PMD configuration<\/span>\n  pmd {\n    <span class=\"pl-c\">\/\/ Same options as Checkstyle<\/span>\n  }\n  \n  <span class=\"pl-c\">\/\/ Lint configuration<\/span>\n  lint {\n    <span class=\"pl-c\">\/\/ Same vars of android lint options<\/span>\n  }\n}<\/pre>\n<\/div>\n<h1><a id=\"user-content-license\" class=\"anchor\" href=\"https:\/\/github.com\/Simdea\/android-quality-verifier#license\" aria-hidden=\"true\"><\/a>License<\/h1>\n<p>See\u00a0<a href=\"https:\/\/github.com\/Simdea\/android-quality-verifier\/blob\/master\/LICENSE.txt\">LICENSE.txt<\/a>.<\/p>\n<p>Original work licensed under\u00a0<a href=\"https:\/\/github.com\/noveogroup\/android-check\/blob\/master\/LICENSE.txt\">MIT license<\/a>.<\/p>\n<p class=\"wp-flattr-button\"><a class=\"FlattrButton\" style=\"display:none;\" href=\"https:\/\/simdea.pt\/pt\/portfolio\/android-quality-verifier\/\" title=\" Android Quality Verifier\" rev=\"flattr;uid:Simdea_pt;language:en_GB;category:text;tags:blog;\">Android Quality Verifier Static code analysis plugin for Android projects. This is a fork of\u00a0the original android-check plugin, which implements a really useful concept. Usage This plugin is available in...<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Android Quality Verifier Static code analysis plugin for Android projects. This is a fork of\u00a0the original android-check plugin, which implements a really useful concept. Usage This plugin is available in jCenter. It attaches itself to the\u00a0check\u00a0task if it finds it (that is, you don&#8217;t use the\u00a0plugins\u00a0block and you apply either the application or library Android<br \/><a class=\"moretag\" href=\"https:\/\/simdea.pt\/pt\/portfolio\/android-quality-verifier\/\">+ Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":370,"comment_status":"open","ping_status":"open","template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"jetpack-portfolio-type":[30],"jetpack-portfolio-tag":[32,31,5],"class_list":["post-371","jetpack-portfolio","type-jetpack-portfolio","status-publish","format-standard","has-post-thumbnail","hentry","jetpack-portfolio-type-open-source","jetpack-portfolio-tag-android-library","jetpack-portfolio-tag-open-source","jetpack-portfolio-tag-released"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Android Quality Verifier - Simdea<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Android Quality Verifier - Simdea\" \/>\n<meta property=\"og:description\" content=\"Android Quality Verifier Static code analysis plugin for Android projects. This is a fork of\u00a0the original android-check plugin, which implements a really useful concept. Usage This plugin is available in jCenter. It attaches itself to the\u00a0check\u00a0task if it finds it (that is, you don&#8217;t use the\u00a0plugins\u00a0block and you apply either the application or library Android+ Read More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/\" \/>\n<meta property=\"og:site_name\" content=\"Simdea\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/simdea.pt\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/simdea.pt\/wp-content\/uploads\/2017\/08\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"6000\" \/>\n\t<meta property=\"og:image:height\" content=\"4000\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@simdea_pt\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/\",\"url\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/\",\"name\":\"Android Quality Verifier - Simdea\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/simdea.pt\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/simdea.pt\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1\",\"datePublished\":\"2017-08-01T22:07:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/simdea.pt\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/simdea.pt\\\/wp-content\\\/uploads\\\/2017\\\/08\\\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1\",\"width\":6000,\"height\":4000},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/android-quality-verifier\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/simdea.pt\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Projects\",\"item\":\"https:\\\/\\\/simdea.pt\\\/portfolio\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Android Quality Verifier\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/simdea.pt\\\/#website\",\"url\":\"https:\\\/\\\/simdea.pt\\\/\",\"name\":\"Simdea\",\"description\":\"Simple Ideas are the best!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/simdea.pt\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Android Quality Verifier - Simdea","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/","og_locale":"en_US","og_type":"article","og_title":"Android Quality Verifier - Simdea","og_description":"Android Quality Verifier Static code analysis plugin for Android projects. This is a fork of\u00a0the original android-check plugin, which implements a really useful concept. Usage This plugin is available in jCenter. It attaches itself to the\u00a0check\u00a0task if it finds it (that is, you don&#8217;t use the\u00a0plugins\u00a0block and you apply either the application or library Android+ Read More","og_url":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/","og_site_name":"Simdea","article_publisher":"https:\/\/facebook.com\/simdea.pt","og_image":[{"url":"https:\/\/i0.wp.com\/simdea.pt\/wp-content\/uploads\/2017\/08\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1","width":6000,"height":4000,"type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_site":"@simdea_pt","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/","url":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/","name":"Android Quality Verifier - Simdea","isPartOf":{"@id":"https:\/\/simdea.pt\/#website"},"primaryImageOfPage":{"@id":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/#primaryimage"},"image":{"@id":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/simdea.pt\/wp-content\/uploads\/2017\/08\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1","datePublished":"2017-08-01T22:07:09+00:00","breadcrumb":{"@id":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/#primaryimage","url":"https:\/\/i0.wp.com\/simdea.pt\/wp-content\/uploads\/2017\/08\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1","contentUrl":"https:\/\/i0.wp.com\/simdea.pt\/wp-content\/uploads\/2017\/08\/pexels-photo-97077.jpeg?fit=6000%2C4000&ssl=1","width":6000,"height":4000},{"@type":"BreadcrumbList","@id":"https:\/\/simdea.pt\/portfolio\/android-quality-verifier\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/simdea.pt\/"},{"@type":"ListItem","position":2,"name":"Projects","item":"https:\/\/simdea.pt\/portfolio\/"},{"@type":"ListItem","position":3,"name":"Android Quality Verifier"}]},{"@type":"WebSite","@id":"https:\/\/simdea.pt\/#website","url":"https:\/\/simdea.pt\/","name":"Simdea","description":"Simple Ideas are the best!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/simdea.pt\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/jetpack-portfolio\/371","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/jetpack-portfolio"}],"about":[{"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/types\/jetpack-portfolio"}],"author":[{"embeddable":true,"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/comments?post=371"}],"version-history":[{"count":0,"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/jetpack-portfolio\/371\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/media\/370"}],"wp:attachment":[{"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/media?parent=371"}],"wp:term":[{"taxonomy":"jetpack-portfolio-type","embeddable":true,"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/jetpack-portfolio-type?post=371"},{"taxonomy":"jetpack-portfolio-tag","embeddable":true,"href":"https:\/\/simdea.pt\/pt\/wp-json\/wp\/v2\/jetpack-portfolio-tag?post=371"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}