Ответ 1
это случилось со мной
Я делаю 2 вещи:
- Проверьте весь файл, чтобы увидеть другой перевод не выполнен (у меня есть файлы в файле en, но в pt-br)
- Очистите, обновите градиент и закройте и перезапустите Android Studio
Вот мои значения\strings.xml (файл по умолчанию), и все говорит само за себя:
Мои вопросы):
translatable="false"
? В файлах values-pl\strings.xml (и в папках values-ru, values-iw) строки даже не существуют? это не должно так или иначе.(Я бы показал здесь значения-ru\string.xml или values-pl\string.xml, но там ничего интересного нет, так как строки все равно отсутствуют...)
это случилось со мной
Я делаю 2 вещи:
Восстановление может занять много времени. YMMV, но...
Просто удалите оскорбительную строку и добавьте ее снова.
Работал на меня. Очень быстро.
В моем случае это помогло мне:
Если это не работает для вас, попробуйте добавить те же строки в файл strings.xml(v21)
.
Нажмите Invalidate Caches/Restart..., чтобы перезапустить андроид студию. Это сработало для меня. На самом деле это произошло, когда я скопировал файлы с другого компьютера и вставил их через проводник.
У меня было то же сообщение об ошибке, только со странной проблемой, что оно было выброшено в самой локали по умолчанию и во всех переводах. Оказывается, вы не должны использовать точки в вашем имени (например, name = "bla.blub"), потому что он будет внутренне преобразован в "bla_blub", а затем он не может совпадать с "bla.blub", что приводит к ошибке. Мне нужно было только изменить точки на подчеркивания в локали по умолчанию, а затем все другие ошибки в других переводах (включая точки в имени) также исчезли.
Но имейте в виду, что другие инструменты сборки все еще могут создавать проблемы, поэтому вместо этого замените все точки подчеркиванием!
Выход из Android Studio и перезапуск это исправили это для меня.
Я создал инструмент для управления статусом перевода приложений для Android. Он не только сообщает вам, какие строки отсутствуют на других языках, но также может сообщать и очищать оставшиеся строки, которые вы, возможно, удалили в файле перевода по умолчанию.
https://github.com/gubatron/android-missing-strings
Чтобы очистить все левые выходы на других языках, вызовите это
./ams --cleanleftovers -o all.txt
Это очистит оставшиеся строки и выведет отсутствующий отчет о строках для всех языков в файл all.txt
"xmlns:tools="http://schemas.android.com/tools"
Вы должны добавить этот код в тег ресурсов файла strings.xml
Просто убедитесь, что у вас одинаковые соглашения об именах для всех строковых файлов, включая одинаковую заглавную. скажем, если у вас есть "sign_in" в strings.xml и "sign_In" в вашем fr/string.xml, так что это даст вам ошибку в fr/strings.xml, как "переведено здесь, но не найдено в локали по умолчанию". Итак, когда вы редактируете "sign_in". Ошибка уберет.
Вам просто нужно скопировать ошибочную строку (или одну из множества ошибочных строк), удалить ее и заново вставить. Это сняло проблему для меня.
Я решил эту проблему, выполнив следующие шаги:
убираю мой проект
восстановить его
и, наконец, нажмите недействительные кеши/перезапустите в меню файла
Я надеюсь, что это может помочь любому, кто сталкивается с этой проблемой в Android Studio.