Локализация симулятора iOS 8.1 нарушена (NSLocalizedString)

TL; DR:
Кажется, локализация не работает с симулятором xCode 6.1 и 8.1.
Обходной путь:
Перейдите в раздел "редактировать схемы" ">>" Выполнить "(боковая панель) >> вкладка" Параметры ">>" Язык приложения "
Выберите язык, на котором вы хотите запустить приложение на симуляторе.


Длинная история:

Я обновил xCode до версии 6.1. Обновление удалило симуляторы iOS 7.x и оставило мне только симулятор 8.x.
Я сделал следующие шаги:

  • Я установил симулятор 7.x
  • Убрал проект
  • Удалил приложение из симуляторов
  • Удалена производная папка для моего проекта

Проект поддерживает английский и японский языки.
на симуляторе 7.1 (5s) локализация работает должным образом.
на симуляторе 8.1 (5s) не работает.

Я предполагаю, что Apple что-то сломала с симулятором, потому что он работает на реальных устройствах.

Любой ввод по этому поводу, кто-нибудь еще испытывал аналогичные проблемы?


РЕДАКТИРОВАТЬ
Похоже на ошибку в симуляторе, ссылка:
Apple Форумы разработчиков


person natanavra    schedule 22.10.2014    source источник
comment
Была такая же проблема с использованием GM2, которая должна быть такой же, что и сейчас   -  person arnoapp    schedule 22.10.2014
comment
Найдите рабочее решение на странице stackoverflow.com/a/26690370/2066428   -  person malex    schedule 01.11.2014
comment
Кроме того, локализация ИНОГДА не работает на устройстве: в моем случае приложения на устройстве иногда используют 1-й предпочтительный язык, выбранный в настройках устройства, а иногда и базовую локализацию.   -  person Reinhard Männer    schedule 29.11.2014
comment
Проблема все еще существует, даже iOS 8.1.1 / Xcode 6.1.1 поставляется.   -  person testing    schedule 04.12.2014
comment
Обходной путь выбора языка приложения в схеме у меня не работает ... Есть какие-нибудь советы?   -  person Orion Edwards    schedule 19.12.2014
comment
Орион, вы уверены, что устанавливаете язык, а не регион? Там два варианта ... И у меня пока работает.   -  person natanavra    schedule 19.12.2014
comment
У меня работает установка языка в схеме сборки. Для удобства я также установил язык в симуляторе.   -  person Joe    schedule 21.12.2014
comment
Джо, в основном это есть, поэтому вам не нужно менять язык в симуляторе каждый раз, когда вы хотите провести тестирование локализации.   -  person natanavra    schedule 22.12.2014
comment
В моем приложении есть два файла, локализованных для каждого языка: Localizable.strings и Main.storyboard (для строк раскадровки). Если я устанавливаю язык в схеме сборки, на выбранный язык переводятся только строки Localizable.strings, но не строки раскадровки. Кто-нибудь еще сталкивался с этой проблемой?   -  person ljmelgui    schedule 02.01.2015
comment
@ljmelgui: У меня была такая же проблема, как у вас, и причина в том, что моя Main.storyboard была полностью испорчена, когда я экспортирую и импортирую xliff. Надеюсь, это поможет.   -  person szemian    schedule 10.01.2015
comment
Вы спасли меня! Спасибо!   -  person lvp    schedule 18.01.2015
comment
ID радара 18719505 BTW   -  person Epaga    schedule 20.01.2015
comment
Apple исправила ошибку с xCode версии 6.2   -  person Fabio Berger    schedule 10.03.2015


Ответы (1)


Это упоминается в примечаниях к выпуску Xcode 6.1 и в других потоках сброса стека, например:

Симулятор iOS8.1 всегда использует Раскладка клавиатуры для США, несмотря на немецкую аппаратную клавиатуру

person Jeremy Huddleston Sequoia    schedule 23.10.2014
comment
Привет, Джереми, вопрос, о котором вы говорите, немного отличается, и, кроме того, заголовок вопроса не предполагает, что локализация не работает. - person natanavra; 25.10.2014
comment
Это та же проблема. Глобальные настройки (включая языковой стандарт и настройки клавиатуры) работают некорректно в симуляторе iOS 8.1. - person Jeremy Huddleston Sequoia; 26.10.2014
comment
Вы правы, аппаратные клавиатуры тоже выходят из строя. - person natanavra; 28.10.2014