Nslocationwheninuseusagedescription локализация с использованием.файл строк не работает
Я завершил перевод моего приложения на турецкий язык с помощью базовой локализации. Однако, мне также нужно перевести NSLocationWhenInUseUsageDescription
ключ в моем Инфо.plist файл. Я сделал именно то,что сделал для всего остального:--5-->
пошел в файл инспектор и проверил турецкий:
затем я пошел к ресурсу new strings и завершил свой перевод, добавив этот ключ в файл локализации:
"NSLocationWhenInUseUsageDescription" = "[my Turkish description of location permissions]";
сохраненные, скомпилировано, даже удалено приложение с устройства и перестроено, но безрезультатно. Когда мое приложение запрашивает разрешения на местоположение, объяснение под ним по-прежнему является английским (я пробовал включить английский перевод также в базовый файл перевода, но ничего не изменил).
все остальное турецкий, переводится просто отлично. Это просто разрешение на местоположение, которое не переводится. Я тоже видел как локализовать строку внутри информации iOS.файл plist? и добавлено "Localized resources can be mixed" = YES
ключ (конечно, как CFBundleAllowMixedLocalizations
, не буквально это предложение) к моему первоначальному plist, но это также ничего не изменило.
как я могу решить эту проблему?
3 ответов
вот что в конечном итоге работает для меня Xcode 7.1
.
сначала перейдите в каталог проекта и вручную создайте два InfoPlist.strings
файлы, первые внутри en.lproj
папка и вторая внутри .
оба файла должны иметь следующее содержание :
NSLocationWhenInUseUsageDescription = "YOUR TEXT HERE";
поскольку файлы не будут отображаться автоматически в Xcode, вы должны вручную добавить оба в пакет проекта, этого можно достичь, щелкнув правой кнопкой мыши имя проекта в Xcode и выбор Add files to X
опция, затем выберите файлы, которые вы только что создали.
также, если вы хотите проверить результат и убедиться, что все работает, изменив Application Language
на Edit Scheme > Run > Options
недостаточно.
вам нужно изменить симулятор или устройства язык через Settings > General > Language & Region > iPhone Language
Я начал за. Удалил переводы, очистил проект и попробовал еще раз. Это сработало. Я понятия не имею, почему это не произошло изначально.
моя проблема, похоже, чувствительна к регистру:
мой InfoPlist.strings
имел Нижний " i " в finder и Xcode (infoPlist), но должен быть верхним.
Я изменил имя файла и ссылку в исходном проекте Xcode, и он работает (или удалить и воссоздать с правильным именем).