Android Studio 配置 Sonar 代码检测

SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。

安装 SonarQube

  1. 下载好sonarqube后,解压打开bin目录,启动相应OS目录下的sonar。本文使用的是mac,故相应地址为/Users/mobile/Documents/sonarQueue/sonarqube-7.0/bin
  2. 执行启动命令sonar.sh start
  3. 打开浏览器输入http://localhost:9000

可以使用 sonar.sh -h来查看其他可使用命令

配置 SonarQube

  1. 安装汉化插件,配置-> 应用市场


    汉化插件
  2. 安装 Android Lint 插件


    Android Lint插件

若插件安装失败,可以在SonarQube 的根目录下,找到extensions/plugins手动将下载好的插件放到该目录,然后重启即可

配置 Gradle

  1. gradle2.1.4版本之后配置方式如下,在项目根目录的 build.gradle下添加如下代码
// plugins段放置位置有要示,放在buildscript段前面会报错,放到文件最末尾也报错,紧跟buildscript放置OK,其余位置没有偿试
plugins {
    // 添加插件信息
    id "org.sonarqube" version "2.6.2"
}

subprojects {
    // 在subprojects段中添加以下块内容
    sonarqube {
        properties {
            property "sonar.sourceEncoding", "UTF-8"
            property "sonar.projectKey", "SMEC_SIE_TAKE_ANDROID" //projectkey
            property "sonar.projectName", project.name  //projectname
            property "sonar.sources", "src/main/java" //源码,写这个就行
            property "sonar.projectVersion", "1.0.0"  //版本,随意
            property "sonar.binaries", "build/intermediates/classes"
        }
    }
}

配置 gradle.properties

配置根目录下的 gradle.properties, 若没有,则需要新建

systemProp.sonar.host.url=http://localhost
// 若有 token,此处可以直接设置 login为 token: a82dc8d81f4f8bfb552b24a4f0b1c7932a935135
systemProp.sonar.login=admin
systemProp.sonar.password=admin

执行代码检测任务

  1. 在目录下执行./gradlew.sh sonarqube
  2. 执行 gradle 中的project -> other -> sonarqube
    image.png

配置自己的规则

  1. 复制 Android Lint 重命名为AndroidLintRule
    image.png
  2. 修改 AndroidLintRule的值为Sonar Way
    image.png

删除部分和代码规范不一致的风格

  1. 例如:此规则建议所有的集合或数组都需要clone()来执行
    image.png

修复代码

  1. 根据指示,进行相关的代码修复,可以创建和分配 bug 给指定的人,并修复相关问题


    image.png

你可能感兴趣的:(Android Studio 配置 Sonar 代码检测)