2014-11-17 33 views
6

Sto provando a localizzare il nome della mia app, ma non riesco a farlo funzionare. Ho un InfoPlist.strings localizzate con il seguente contenuto:La localizzazione CFBundleDisplayName non funziona

CFBundleDisplayName = "Application Name in English"; 
CFBundleName = "App Name – in English"; 

nonché la LSHasLocalizedDisplayName (Application has localized Display Name) impostate YES. Cos'altro potrei mancare?

Cosa potevo mancare? In un'altra app funziona in modo impeccabile, ma per questa app non riesco a trovare il nome da localizzare.

InfoPlist.strings si trova nella stessa directory delle altre stringhe localizzate e anche l'appartenenza di destinazione è selezionata.

EDIT: come ho scoperto, ho due di linguaggi (tedesco, inglese) e funziona per il tedesco, ma non per l'inglese ... l'applicazione locatization (Localizable.strings) nello stesso en- directory funziona perfettamente, ma InfoPlist.strings non ...

risposta

1

Hai menzionato che hai aggiunto CFBundleDisplayNameCFBundleName in InfoPlist.string. C'è qualche possibilità, che potresti non averlo nel file info.plist.

Inoltre, si potrebbe voler controllare se i seguenti non stanno tornando null:

[[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleNameKey]; 
[[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundleLocalizationsKey]; 

E anche, (È necessario aver letto, ma ancora) ho un dubbio che questo può essere un problema, se puoi controllare

Prima di visualizzare un nome localizzato per il vostro pacco, il Finder confronta il valore di questa chiave contro il nome effettivo del fascio nel file system. Se i due nomi corrispondono, il Finder passa a visualizzando il nome localizzato dal file InfoPlist.strings appropriato del pacchetto. Se i nomi non corrispondono, il Finder visualizza il nome del file system .

3

Hai provato questo sul dispositivo o nel simulatore?

Perché nel simulatore funzionerà sempre in inglese (o forse il tuo linguaggio Mac, che è inglese per me), non prenderà le impostazioni dal simulatore stesso.

E 'strano, ma è necessario impostare la lingua per l'applicazione al momento della compilazione nello schema:

enter image description here

+0

Nice Catch. Questo può certamente essere un problema. +1 – Anon

Problemi correlati