当前位置: 首页 > 知识库问答 >
问题:

Android Studio更新后显示错误(缺少翻译)

梁丘招
2023-03-14

最近,我将我的Android Studio从2.2.3更新为2.3.0,项目在2.2.3中运行良好,但在将项目依赖项类路径从2.2.3更新为2.3.0后,从字符串中获取大量缺失的翻译错误。xml。

有人能告诉我为什么会发生这种情况以及如何解决这些错误吗?

共有2个答案

咸昀
2023-03-14

我面临着完全相同的问题。根据我的观察,这个问题是Gradle插件2.3.0版引入的。当您的项目中有一个模块支持的语言比您的应用程序或其他模块更多时,就会发生这种情况。您可以开始编辑这些模块的翻译,但这会降低它们的可维护性。

如果您使用此处的任何建议或针对类似问题禁用Lint检查,您也会忽略应用程序中的实际翻译错误,其中您支持的语言缺少翻译。在那之后,你需要非常小心地维护你的字符串。

还有一个也是次优的选项:将插件版本更改回上一个在构建中不显示这些症状的版本。格拉德尔。

dependencies {
    classpath 'com.android.tools.build:gradle:2.2.3'
}

但是,有一种方法可以在不丢失重要警告/错误以及不恢复到旧工具版本的情况下实现此功能。你可以在谷歌的文档和这个答案中找到它。

android {
    defaultConfig {
        ...
        resConfigs "en", "fr"
    }
}

这会删除不需要的资源以及警告和错误。我已经更新了我的代码,现在它构建得很好。

新的Gradle插件版本引入了另一个问题:如果您收到误报,即抱怨您标记为不可翻译的字符串缺少翻译的错误,请检查该字符串名称是否存在于另一个模块中。在这种情况下,重命名或提供翻译,错误就会消失。

颜举
2023-03-14

有多种方法可以解决此问题:

第一种方法:

添加到生成。格拉德尔:

android {
     lintOptions {
        disable 'MissingTranslation'
    }
}

第二种方法:

它是字符串文件中工具名称空间的忽略属性,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<resources
  xmlns:tools="http://schemas.android.com/tools"
  tools:ignore="MissingTranslation" >

  <!-- your strings here; no need now for the translatable attribute -->

</resources>

第三种方法:

在您的ADT中转到窗口-

找到缺少翻译并将其Severity更改为Warning

参考链接:

http://www.fasteque.com/missingtranslation-issue-for-release-builds/

希望对你有帮助。

 类似资料:
  • 自从升级到Gradle 3.3以来,由于缺少翻译错误,我在构建代码时遇到了麻烦: 错误:xxx没有翻译成“af”(南非荷兰语)、“am”(阿姆哈拉语)、“ar”(阿拉伯语)、“az”(阿塞拜疆)、“az-az”(阿塞拜疆:阿塞拜疆)、“be”(白俄罗斯)、“bg”(保加利亚)、“ca”(加泰罗尼亚)、[……],“zh TW”(中文:台湾)、“zu”(祖鲁)[缺失翻译] 报告的大多数语言都是我的项目

  • 我最近换了主持人。在这之后我看到了一个错误。我在Wordpress菜单中显示登录用户名时使用了一段代码来显示用户名,而不是“配置文件页”。它在上一台主机上运行正常。复制完所有内容和数据后,我在菜单栏上看到了这个错误。用户登录时会看到这一点。请提出补救办法。 下面是我的代码。这与我发布的stackoverflow链接上给出的完全相同。我创建了一个页面#profile_name#正如链接中提到的。

  • 我的R.java文件没有生成,我在这里搜索了答案,但没有一个答案有效。在我更新ADT之前,一切都很好,所以代码应该没问题。这是我尝试过的: null 我该怎么办?请帮帮我!

  • 我运行的是Mac OSX,我安装了android Studio-它启动正常。 问题1 我用一个空活动开始一个新项目。在最上面的窗户上我收到一条信息 问题2 我在底部窗口中看到以下错误: 错误:CompilesDKVersion android-L需要使用JDK 7 Open SDK Settings进行编译 打开文件 当我尝试在设备上运行项目时,我得到以下错误: 失败[INSTALL_FAILED

  • 我正在为我的flutter应用程序使用Share Preference软件包,但是它显示以下错误 插件不实现插件接口,也不在 pubspec.yaml 中设置默认实现。 要设置默认实现,请使用:flutter:plugin:platforms:Linux:default _ package: 要实现接口,请使用:flutor:plugin:implements: plugin < code > p

  • 问题内容: 嗨,我是Android编程的新手,我想问的问题可能很简单,但是我对如何使其工作一无所知,请多多包涵。 我从Android开发人员网站安装了android-sdk和相关工具。我按照他们的指示创建了HelloWorld应用,但出现了一些我不理解的错误。 文件MainActivity.java是一个自动生成的文件,在以下位置,我不断出现此文件错误: 因此,我尝试浏览生成的class文件中的l