kor*_*ras 6 android android-build apk android-gradle-plugin
问题很奇怪.我正在尝试直接添加一个String,build.gradle因为我需要它来使用Tray库(https://github.com/grandcentrix/tray).在我的第一个项目中一切都很好.在第二个项目中,它有点复杂.我正在使用gradle:1.2.3并在导出已签名的apk时出现MissingTranslation错误.
的build.gradle
applicationId "some.app.id"
resValue "string", "tray__authority", "${applicationId}.tray"
Run Code Online (Sandbox Code Playgroud)
构建错误
.../build/generated/res/generated/release/values/generated.xml
Error:(7) Error: "tray__authority" is not translated in "pl" (Polish) [MissingTranslation]
<string name="tray__authority">some.app.id.tray</string>
Run Code Online (Sandbox Code Playgroud)
generated.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Automatically generated file. DO NOT MODIFY -->
<!-- Values from default config. -->
<string name="tray__authority">some.app.id.tray</string>
</resources>
Run Code Online (Sandbox Code Playgroud)
有几个类似的问题,但所有这些问题都与strings.xml有关,并建议使用
<resources
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="MissingTranslation">
Run Code Online (Sandbox Code Playgroud)
要不就 translatable="false"
我不能这样做因为文件是自动生成的.如何强制gradle忽略错误?我尝试更改检查设置并将其设为警告,但gradle忽略了我的设置.
我知道这是一个错误(https://code.google.com/p/android/issues/detail?id=152198),但我不知道如何解决它.我找到的所有答案都不起作用.
kor*_*ras 11
好吧,我解决了这个问题.必须要说的是,这个错误很奇怪.它从未出现过,只有最新的gradle版本才有问题.我发现生成签名的apk会忽略我们的检查设置(Android Studio),因此无法生成生产版本.
只需在正确的地方忽略它!这里:build.gradle
android {
// defaultConfig, buildTypes, etc.
lintOptions {
disable 'MissingTranslation'
}
}
Run Code Online (Sandbox Code Playgroud)
应该使用该解决方案,意识到所有缺失的翻译都将被忽略,因此我建议对其进行评论,仔细检查缺少的内容,并在所有内容完成后最终取消注释;)
我希望它对某人有所帮助.非常讨厌的事情.
| 归档时间: |
|
| 查看次数: |
1722 次 |
| 最近记录: |