// //

lint警告

  • 現象:ビルドした際にuncehckedやdeprecationの警告ログが出てビルドが成功しない


警告レベルとは言っても未確認処理や不適切処理だから直せやと怒られている。

  • 理由:ソース上の不備もしくはlintの設定による回避を行っていない


まぁ、不適切な処理を使っていると怒られているので修正するのが最善だが、
そうも言ってられない事情もある…ので回避することにする。


ちなみに、該当部分の詳細なログが欲しい場合は下記をbuild.gradleに記載。
(これを回避処理と勘違いしてはまったのは内緒…)

allprojects {
    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
        }
    }
}
  • 解決:build.gradleにlintOptionsを仕込む
android{
省略
   lintOptions {
        abortOnError false
        warningsAsErrors true
        lintConfig file("app/lint.xml")
    }
}


記載内容にもあるが、appディレクトリ配下に下記の「lint.xml」を置いてある。

<?xml version="1.0" encoding="UTF-8"?>
<lint>
    <issue id="MissingTranslation" severity="warning" />
</lint>


褒められたやり方ではないのは百も承知…