Это действительно странная проблема iOS.
Я хочу локализовать свое текущее английское приложение для США, добавив en_US.
По умолчанию при локализации файла создается файл English.lproj, и я добавляю en_US.lproj, предполагая, что он будет использоваться пользователями en_US. Это не так.
Похоже, что iOS принимает язык English.lproj как приоритет над конкретным регионом, в соответствии с https://developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPInternational/Articles/LanguageDesignations.html#//apple_ref/doc/uid/20002144-130599, где указано "То же приложение на iPhone будет выглядеть только в Справочник en.lproj. "
Поэтому я реализовал этот обходной путь, который помогает: Локализация приложений iPhone - проблемы с английским языком?
Однако теперь я хочу локализовать CFBundleDisplayName для приложения en_US, но меня поразила та же проблема. Он игнорирует мои en_US локализованные infoPlist.strings и принимает английское значение infoPlist.strings.
Это огромный контроль со стороны Apple? Какие у меня варианты? Создайте локализованные версии en_ для всех англоязычных регионов, чтобы убедиться, что они получают английский, а в США - en_US?