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

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

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

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

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

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

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

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

4b9b3361

Ответ 1

Android Studio:

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

Eclipse:

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

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

Missing translations, is not translated in

Ответ 2

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

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

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

Ответ 3

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

lintOptions {
   disable 'MissingTranslation'
}

Ответ 4

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

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

Ответ 5

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

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

Ответ 7

добавьте строки в файл /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

Добавьте следующее в ваш файл Gradle в разделе Android

    lintOptions {
       disable 'MissingTranslation'
    }

Ответ 9

Кроме того,

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

enter image description here

Ответ 10

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

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

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

Ответ 11

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

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

Ответ 12

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

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

Вот оно.

Ответ 13

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

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