Since upgrading to Gradle 3.3, I had a problem creating my code due to errors related to errors:
Error: xxx is not translated into "af" (Afrikaans), "am" (Amharic), "ar" (Arabic), "az" (Azerbaijani), "az-AZ" (Azerbaijani: Azerbaijan) ("Belarusian"), "bg" (Bulgarian), "ca" (Catalan), [...], "zh-TW" (Chinese: Taiwan), "zu" (Zulu) [MissingTranslation]
Most of the registered languages are those that are supported by a third-party module included in my project, and now it seems to determine the supported languages for the entire project, giving me such an error for all strings that are not translated into the above languages. Before upgrading to Gradle 3.3, this did not cause any problems.
I reviewed the following solutions:
- Remove redundant translations from other modules. I want to avoid this because these modules are external, and their unnecessary modification will really damage the maintainability of my project.
- Disable "Incomplete Translation" Lint Verification is the most common suggestion for similar SO questions. This is not optimal, because I want to get information about translations that are not in my code (it still works). In addition, disabling validation does not eliminate the error.
- Define supported configurations in build.gradle as described in this answer . I like this option (by specifying languages instead of relying on the translations available in the modules), but it also does something weird: I get skipping errors for lines marked
translatable = false.
I am currently re-evaluating the previous version of Gradle. But what is the best way to fix these build errors?