Pregunta

Tengo un problema de localización de iPhone que me tiene perplejo. Estaba la localización de mi aplicación y tenía Inglés, así como fina de trabajo chino simplificado y tradicional. Tengo dos archivos, Localizable.strings y sounds.plist que han sido localizados. Las cadenas en ambos archivos aparecían correctamente en el dispositivo y el emulador.

Ahora ayer Estoy añadiendo español, italiano y alemán. Cuando la prueba en el emulador, todo se muestra correctamente. Pero cuando despliego al dispositivo, las cadenas contenidas en pantalla Localizable.strings correctamente, pero las cadenas contenidas en sounds.plist siempre se muestran en Inglés. Incluso las cadenas chinas dejaron de aparecer correctamente.

He intentado limpiar la construye, copiando el texto traducido de nuevo en los archivos sounds.plist, e incluso bombardear los archivos, borrar las carpetas lproj, la eliminación de las localizaciones y empezar de nuevo.

Me puse un punto de interrupción en XCode y parece que para este archivo, que no está detectando la carpeta loc. El código que carga las cadenas de sounds.plist es:

+ (NSDictionary*) getSounds
{
NSString *path = [[NSBundle mainBundle] pathForResource:@"sounds" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:path];
return dict;
}

He comprobado que el nombre del archivo es sounds.plist, todo en minúsculas. En este punto, estoy en una pérdida. Alguien ha experimentado algo como esto? ¿Alguien tiene sugerencias sobre cómo solucionar?

Gracias!

UPDATE: He comparado los resultados de la línea siguiente en el simulador, así como el dispositivo:

NSString *path = [[NSBundle mainBundle] pathForResource:@"sounds" ofType:@"plist"];

En el simulador, el camino se informa correctamente como / Users / Steve /.../ de.lproj / sounds.plist . En el dispositivo, el camino se reporta como / var / mobile /.../ sounds.plist . Tenga en cuenta que de.lproj no está en el camino. Así que ha de cargar sounds.plist de la raíz, lo que explica por qué el texto no parece estar localizado. Ahora mi pregunta es ¿por qué el código de obtener la ruta de acceso al archivo en la carpeta localizada?

¿Fue útil?

Solución 2

El problema fue algo estaba mal estado en el dispositivo. He desinstalado la aplicación desde el dispositivo utilizando el organizador, y luego volver a instalar a través de XCode. Todo está funcionando muy bien ahora.

Otros consejos

¿Hay una marca junto al archivo sounds.plist en Xcode? ¿Estás en el modo de depuración o liberación?

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