Pregunta

Tengo un proyecto de iPhone internacionalizado. En los diversos archivos $ {lang} .lproj / InfoPlist.strings , tengo una clave única, CFBundleName = " My App Name " .

Está funcionando bien para un solo objetivo, pero no puedo hacer que funcione para múltiples objetivos.

Me gustaría tener varios archivos traducidos InfoPlistMyApp.strings para el objetivo principal, además de varios archivos InfoPlistMyApp Lite .strings para el version lite. Pero no puedo averiguar cómo configurarlo. El nombre de InfoPlist.strings parece estar escrito en piedra, por lo que no puedo reemplazarlo dinámicamente.

¿Alguna idea?

¿Fue útil?

Solución

Resulta que esto es bastante fácil, aunque laborioso. Puede tener varias InfoPlist.strings, one-enabled-per-target, y cada una puede internacionalizarse, siempre que cada conjunto esté en un grupo de Xcode diferente .

Configure una estructura de directorios como esta:

.../AppName/
            en.lproj/InfoPlist.strings  <-- Contains CFBundleDisplayName
            it.lproj/InfoPlist.strings  <-- ...
            ...
.../AppNameLite/
            en.lproj/InfoPlist.strings  <-- ...
            it.lproj/InfoPlist.strings  <-- ...
            ...

Importe esos archivos a grupos de Xcode, para que se vea así:

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top