作者:大卫王 | 来源:互联网 | 2023-02-09 18:09
最近我更新了我的Android Studio 2.2.3 to 2.3.0
项目在2.2.3中正常运行,但更新项目依赖类路径后,从2.2.3 to 2.3.0
更多的Missing Translations错误string.xml
.
任何人都可以告诉我它为什么会发生以及如何解决这些错误?
1> vanloc..:
有很多方法可以解决这个问题:
第一种方法:
添加到build.gradle:
android {
lintOptions {
disable 'MissingTranslation'
}
}
第二种方法:
它是字符串文件中命名空间的ignore
属性tools
,如下所示:
第三种方法:
在你ADT
去window->Preferences->Android->Lint Error Checking
发现那里Missing Translation
并改变其Severity
对Warning
.
参考链接:
http://www.fasteque.com/missingtranslation-issue-for-release-builds/
希望对你有所帮助.
2> jerry..:
我面临着同样的问题.根据我的观察,这个问题是在Gradle插件版本2.3.0中引入的.当项目中有一个模块支持比您的应用程序或其他模块更多的语言时,就会发生这种情况.您可以开始编辑此类模块的翻译,但这会降低其可维护性.
如果您使用此处的任何建议或类似问题禁用Lint检查,您也会忽略应用中的实际翻译错误,其中您支持的语言缺少翻译.在此之后你需要非常小心地保持你的字符串.
还有一个,也是次优的选项:将插件版本更改回最后一个不在build.gradle中显示这些症状的版本.
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
}
然而,有一种方法可以在不丢失重要警告/错误的情况下完成这项工作,而无需恢复旧的工具版本.您可以在Google的文档中找到它,也可以在此答案中找到它.
android {
defaultConfig {
...
resConfigs "en", "fr"
}
}
这将删除不需要的资源以及警告和错误.我已经更新了我的代码,现在它构建得很好.
新的Gradle插件版本引入了另一个问题:如果您得到误报,即错误抱怨您已标记为不可翻译的字符串缺少翻译,请检查字符串名称是否存在于另一个模块中.在这种情况下,重命名或提供翻译,错误消失.