2012-02-22 2 views
0

ПроблемаПроблемы с NSLocalizedString, расслоение и IOS5

Сначала мы реализовали локализации с .lproj папок, как fr.lproj, en.lproj, es.lproj и т.д.

Поздних согласно запросу от одного из рецензент (внутренний рецензент, а не кто-то из яблока), мы переключились на коды языка на основе iso-639-2.

Итак, папки были изменены на fra.lproj, eng.lproj, spa.lproj и т. Д., А ссылки на проект добавлены для использования новых файлов. удалено для старых файлов.

После переименования папок внесенные изменения и новые строки, добавленные в файл localizable.strings, не будут затронуты в приложении.

После небольшого исследования мы обнаружили, что оба папки для каждого языка включены в приложение , а ios5 использует содержимое папки fr.lproj, а не содержимое папки fra.lproj. Мы запускали одно и то же приложение в IOS 4, и приложение работает как прелесть с обновленными локализациями.

Пожалуйста, помогите мне с методом приоритизации использования изо 639-2-кодов языков в ИОС 5.

Благодаря

+0

Кто рецензент? Это кто-то с Apple, ответственный за App Store? Если нет, я думаю, вы не должны позволять им влиять на то, что должно быть просто деталью реализации, которая их не касается. – bneely

+0

Извините, что рецензент не кто-то из яблока, он просто внутренний рецензент. Благодарю. –

+0

Каково обоснование использования кодов языка ISO-638-2 в iOS 5? – bneely

ответ

1

От Apple's documentation:

В каталоге Ресурсы в Mac OS X (или каталог верхнего уровня набора приложений для iOS), вы можете создать один или несколько подкаталогов проекта, специфичных для языка, для хранения ресурсов языка и региона. Имя каждого каталога основано на языке и области желаемой локализации, за которой следует расширение .lproj. Чтобы указать язык и регион, используйте следующий формат:

language_region.lproj 

язык часть имени каталога является двумя-буквенным кодом, который соответствует конвенциям ISO 639. Часть региона также является двухбуквенным кодом, но она соответствует стандартам ISO 3166 для обозначения конкретных областей

(выделено мной). Я не уверен, почему он мог работать в других ваших проектах, но, согласно документации, название каталогов локализации должно соответствовать ISO 639-1 (двухбуквенные коды).

+0

Спасибо за ответ и ссылку ссылки Dirk. –

Смежные вопросы