やりたいこと

Android Studio で開発中のアプリを Release ビルドする。

遭遇したエラー

 1* What went wrong:
 2Execution failed for task ':App:lintVitalRelease'.
 3> Lint found fatal errors while assembling a release target.
 4
 5  To proceed, either fix the issues identified by lint, or modify your build script as follows:
 6  ...
 7  android {
 8      lintOptions {
 9          checkReleaseBuilds false
10          // Or, if you prefer, you can continue to check for errors in release builds,
11          // but continue the build even when errors are found:
12          abortOnError false
13      }
14  }
15  ...

対処について

res/values/strings.xml が翻訳できないため、ビルドが中断されるようです。

例えば、これを、、、

1<resources>
2  <string name="app_name">Geek になりた過ぎる</string>
3</resources>

こうして translatable="false" を足してやる。

1<resources>
2  <string name="app_name" translatable="false">Geek になりた過ぎる</string>
3</resources>

すると先程のエラーは解消です。

ローカライズについて

1res
2 |- values/strings.xml
3 |- values-ja/strings.xml

上の構成にし、「日本語とその他でローカライズ」 した場合、上記のように translatable を足すだけでは翻訳エラーを回避できませんでした。

translatable を true にしたり、付けたり外したりしたけど難しかったです。

他にも翻訳エラー回避方法は複数あるようで、build.gradlelintOptions を追加することで対応しましたー

 1android {
 2    compileSdkVersion 22
 3    buildToolsVersion "25.0.0"
 4
 5    defaultConfig {
 6        :
 7    }
 8
 9+   lintOptions {
10+       disable 'MissingTranslation'
11+   }
12}

たった1日で基本が身に付く! Androidアプリ開発超入門

中川 幸哉
出版社:技術評論社  発売日:2018-09-21

Amazonで詳細を見る