强制 lint 检查精确语言的翻译

7
我遇到了这个错误:

在cs,de,es,fr,it,ja,ko,nl,pl,pt,pt-rBR和zh中没有翻译“preferences_default_reminder_labels”。

问题:检查不完整的翻译,其中并非所有字符串都已翻译ID:MissingTranslation

但是我的应用只需要翻译成英文和俄语。我该如何调整Lint,仅检查en、ru的翻译?

可能是Android Lint限制检查缺失翻译的语言的重复问题。 - blahdiblah
2个回答

0

如果您在res中有名为values-XX的空文件夹,且语言不是ru,请将其删除。


1
我没有其他文件夹,只有“values”和“values-ru”。 - karabara

0

请检查是否设置了环境变量ANDROID_LINT_COMPLETE_REGIONS

来自lint文档

MissingTranslation


概述:检查未完成翻译的情况,其中并非所有字符串都已翻译

优先级:8/10
严重程度:致命
类别:正确性:消息

如果应用程序具有多个语言环境,则在一个语言中声明的所有字符串也应在所有其他语言中进行翻译。

默认情况下,此检测器允许语言的区域仅提供一部分字符串并回退到标准语言字符串。您可以通过设置环境变量ANDROID_LINT_COMPLETE_REGIONS要求所有区域提供完整的翻译。

什么是环境变量以及如何使用它们,您可以在这里找到。


1
看起来ANDROID_LINT_COMPLETE_REGIONS对MissingTranslation没有影响。顺便说一句,它并没有帮助我。 - karabara
然后只需从命令行调用 $ lint --disable MissingTranslation /folder/with/project。或者从Eclipse打开项目属性,选择Android Lint首选项,找到MissingTranslation(它在列表中间),并选择Severity -> Ignore。 - vasart
4
我不想禁用MissingTranslation,我只想在ru和en以外的语言中禁用它。 - karabara
也许你的解决方案在这里:https://dev59.com/2WYq5IYBdhLWcg3wvzGm - AntoineP

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接