Lint: Как игнорировать "<ключ> не переводится в <язык>"?

Я не могу скомпилировать/отладить наше приложение для Android, потому что файлы локализации еще не идеальны.

Мой инструмент проверки IDE Lint создает ошибки, говорящие:

newCardsOrderVals не переводится в ar, bg, ca, cs

Компиляция/установка/работа с Ant отлично работает, но я хотел бы использовать мою среду IDE для облегчения отладки.

Есть ли способ отключить эту конкретную проверку или в идеале сделать ее предупреждением, а не ошибкой?

Я понимаю, что до релиза нам действительно нужно получить файлы локализации правильно, но пока это не приоритет, так как сами экраны очень часто меняются.

185
задан 12 июля '12 в 4:45
источник поделиться
13 ответов

Android Studio:

  • "Файл" > "Настройки" и введите "MissingTranslation" в поле поиска

Eclipse:

  • Windows/Linux: В "Окне" > "Настройки" > "Android" > "Проверка ошибок Lint"
  • Mac: "Eclipse" > "Настройки" > "Android" > "Проверка ошибок Lint"

Найдите строку MissingTranslation и установите ее на Warning, как показано ниже:

Missing translations, is not translated in

346
ответ дан 12 июля '12 в 5:09
источник

Вы можете установить атрибут translatable = "false" в определении следующим образом:

<string name="account_setup_imap" translatable="false">IMAP</string>

Для получения дополнительной информации: http://tools.android.com/recent/non-translatablestrings

84
ответ дан 13 сент. '12 в 11:39
источник

Чтобы проигнорировать это в сборке gradle, добавьте это в раздел Android вашего файла сборки:

lintOptions {
   disable 'MissingTranslation'
}
81
ответ дан 26 окт. '14 в 21:49
источник

Это приведет к тому, что Lint проигнорирует недостающую ошибку перевода для ВСЕХ строк в файле, но при необходимости могут быть проверены другие файлы строковых ресурсов.

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" 
    tools:ignore="MissingTranslation">
22
ответ дан 03 апр. '14 в 22:06
источник

Если вы хотите отключить предупреждения о конкретных строках, вы можете использовать следующее:

strings.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>    

    <!--suppress MissingTranslation -->
    <string name="some_string">ignore my translation</string>
    ...

</resources>

Если вы хотите предупреждать об определенных строках вместо ошибки, вам нужно будет создать пользовательское правило Lint, чтобы настроить статус серьезности для конкретной вещи.

http://tools.android.com/tips/lint-custom-rules

11
ответ дан 31 мая '14 в 1:47
источник

Вставьте в файл lint.xml это:

<?xml version="1.0" encoding="UTF-8"?>
<lint>
    ...

    <issue
        id="MissingTranslation"
        severity="ignore" />
</lint>

Подробнее: Подавление предупреждений о линге.

9
ответ дан 31 янв. '14 в 19:58
источник

добавьте строки в файл /res/values.xml на вкладке root root следующим образом:

<resources
xmlns:tools="http://schemas.android.com/tools" 
    tools:locale="en" tools:ignore="MissingTranslation">

tools: locale устанавливает локальный язык на английский язык, не требуется перевод языка позже, для всех строк и инструментов ресурсов: ignore let Lint to is not the missing translations значений строки ресурса.

8
ответ дан 09 авг. '15 в 13:38
источник

Добавьте в заголовок вашего файла strings.xml следующее

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<resources  xmlns:tools="http://schemas.android.com/tools" tools:locale="en">

Это позволяет вам указать инструменты, которые вы используете в папке базовых значений. Для строк в папках values-de или values-en это очевидно, но не в базовой папке "values". Lint будет использовать информацию локали для выбора правильного словаря при поиске орфографических ошибок по умолчанию.

6
ответ дан 16 авг. '13 в 19:23
источник

Кроме того,

Не зависит от проекта, Eclipse Preferences.
В Mac Eclipse > Предпочтения

enter image description here

5
ответ дан 15 марта '13 в 5:57
источник

Другой подход - указать языки, которые вы собираетесь поддерживать, и отфильтровывать остальные, используя параметр resConfigs с Gradle.

Подробнее этот другой ответ

Это лучше, я думаю, потому что вам не нужно полностью игнорировать законные ошибки перевода для языков, которые вы действительно хотите поддержать

3
ответ дан 30 июня '15 в 18:29
источник

Многие из них имеют разные рабочие ответы, и у меня тоже есть те же ошибки ворса я заставляю его игнорировать, выполняя следующие действия с помощью eclipse.

  • щелкните по Windows
  • нажмите на настройки
  • выберите android > Проверка ошибок Lint.
  • нажмите на игнорировать All > Apply > Ok.

Вот оно.

1
ответ дан 07 июля '14 в 8:55
источник

Вы также можете поместить ресурсы, которые вы не хотите переводить в файл с именем donottranslate.xml.

Пример и пояснение: http://tools.android.com/recent/non-translatablestrings

1
ответ дан 25 апр. '14 в 10:46
источник

Следующие работали для меня.

  • Нажмите Windows
  • Нажмите на настройки
  • Выберите android > Проверка ошибок Lint.
  • Найдите и выберите соответствующую проверку Lint и
  • Задайте значение "Игнорировать" (внизу справа)
1
ответ дан 12 дек. '14 в 10:47
источник

Другие вопросы по меткам или Задайте вопрос