Ответ 1
Я получил временное решение.
скопировать auth_strings.xml
из values-en-rIN
(значения локали для INDIA вы можете использовать любой язык) и вставить его в папку по умолчанию values
.
Я вынужден использовать службу Google Play (мне нужна служба определения местоположения). Итак, после того, как я написал весь код и протестированное приложение на устройстве, я попытался экспортировать подписанное приложение. И все, что у меня есть, - это ошибки Линта, такие как (Даже я изменил MissingTranslation erros в Lint от фатального до предупреждения)
"auth_client_using_bad_version_title"
is translated here but not found in default locale
И эта ошибка повторяется во всех папках "values-" Я знаю, что я могу отключить проверку линта перед экспортом приложения. Но есть ли способ сделать это правильно без каких-либо взломов, ошибок и проклятий на разработчиков Google? Поэтому я считаю этот случай одной из двух вещей:
Я получил временное решение.
скопировать auth_strings.xml
из values-en-rIN
(значения локали для INDIA вы можете использовать любой язык) и вставить его в папку по умолчанию values
.
В верхней части файла вашей строки измените <resources>
на это:
<resources tools:ignore="ExtraTranslation" xmlns:tools="http://schemas.android.com/tools">
Похоже на проблему с кэшированием в Android Studio. Для меня File → Invalidate caches/restarts исправил проблему.
Перейти к
Window- > preferences- > Android- > Проверка ошибок Lint → Корректность: Сообщения → Дополнительные переводы ------------ > сделать это опасным для жизни
В Android Studio выберите "Файл"> "Неправильно использовать кэши/перезагрузить..." и нажмите "Отменить и перезагрузить".
Таким образом, "локаль по умолчанию" - это только "значения" без модификаторов, таких как -af
, -am
, -en
и т.д. Проблема возникает из-за отсутствия файла auth_strings.xml
в этой папке, чтобы там не является резервным вариантом и, следовательно, ошибкой.
Чтобы исправить это, просто скопируйте файл auth_strings.xml
из другой папки values
в качестве языка по умолчанию. Я бы предложил общий язык, как английский или испанский. Я использовал английский. Это исправляет ошибку для меня. Я предполагаю, что они просто забыли поставить язык по умолчанию.
у меня была та же проблема.. и "чистый проект" решил проблему
Все, что я сделал, это скопировать файл auth_strings.xml из английской папки в папку значений по мере отсутствия версии по умолчанию.
просто измените дополнительный перевод с фатального на предупреждение. Он работал у меня.
Окно --- > Настройки --- > Проверка ошибок Lint --- > Дополнительный перевод (в столбце ID)
Если вы хотите просто передать процесс выпуска,
В Android Studio с помощью Gradle вы можете отключить "Контроль ошибок Lint" во время процесса выпуска.
Откройте файл build.gradle(app)
и добавьте следующий фрагмент кода внутри тега android.
lintOptions {
checkReleaseBuilds false
// Or, if you prefer, you can continue to check for errors in release builds,
// but continue the build even when errors are found:
abortOnError false
}
Убедитесь, что у вас есть строка в локали по умолчанию. Если у вас есть, попробуйте удалить строку ошибки в strings.xml и отменить удаление. Если string.xml из библиотеки lib, удалите lib, синхронизируйте, отмените удаление и повторите синхронизацию.
Если вышеуказанный шаг не сработал, очистите проект.
У меня была та же проблема, которую я не мог решить. Я просто перезапустил Android Studio, и больше не было ошибок.
Это проблема кеширования.
В Android Studio выберите "Файл"> "Неправильно кэшировать/перезапустить..." и нажмите "Отменить и перезапустить".
Очень быстрое решение, упомянутое здесь here для this-
Просто удалите оскорбительную строку и добавьте ее снова.
Убедитесь, что у вас есть строка в области по умолчанию. В случае, если он у вас есть, попытайтесь стереть строку ошибки в strings.xml и исправить отмену. На всякий случай, что string.xml и исправить отмену. Если существует вероятность, что string.xml взят из библиотеки lib, удалите библиотеку, сопоставьте ее, исправьте ее и настройте еще раз.
Если вероятность того, что вышеуказанный аванс не сработал, очистите предприятие.