Измените локализованные InfoPlist.strings, используя цель XCode - PullRequest
0 голосов
/ 12 июня 2010

Вот неясная проблема. Я использую InfoPlist.strings для локализации имени моего приложения. У него только одно значение: CFBundleDisplayName = "Mon App". Файл строк локализуется (помещая его в каталог для этой локализации).

Я только что сделал дополнительную цель, где я изменяю такие вещи, как нелокализованное имя приложения (разные Info.plist s) и значок. Я также изменяю Default.png, используя фазу сборки сценария запуска (копирование разных файлов в зависимости от типа приложения, которое я создаю).

Я пытался использовать скрипт для копирования разных версий моих InfoPlist.strings, но я не мог заставить его работать. Вот что я использовал:

if($TARGET_NAME == "MonApp")then
cp fr.lproj/MonApp_InfoPlist.strings fr.lproj/InfoPlist.strings
endif

Я видел пост, предлагающий wincent strings util для обработки строк, но хотел посмотреть, есть ли простой способ сделать это. Любая помощь с благодарностью.

1 Ответ

2 голосов
/ 12 июня 2010

Вам не нужно это делать.

Если у вас есть fr.lprog / InfoPlist.strings и en.lproj / InfoPlist.strings в вашем проекте, вы должны увидеть только одну запись InfoPlist.strings,с двумя подпунктами fr и en.Если вы перетащите файл InfoPlist.strings в фазу сборки Copy Bundle Resources, все локализованные версии будут скопированы в соответствующие файлы .lproj во время сборки.Вам не нужно создавать отдельную цель или писать скрипт для этого;правильная вещь случается.

...