Mi solución es, en el fondo:
He estado corriendo en el mismo problema: carreras alternas producen traducciones correctas, entonces incorrectas (sólo para Inglés sin embargo).
Adición "-NSShowNonLocalizedStrings sí" como argumento para la aplicación produjo:
Localizable string "MyKey" not found in strings table "Localizable" of bundle CFBundle
tanto, he intentado cargar el archivo de claves directamente desde el paquete como una cadena y deshacerse de ellos. Bueno, las veces que NO funcionó correctamente, mostraba un montón de mensajes integrados de iOS. Entonces, fui al archivo APP que se creó, abrí el contenido del paquete y vi el archivo en.lproj/Localizable.strings ... ¡¡y listo !!! El archivo se ha llenado con los pares clave/valor de Apple iOS. En la siguiente compilación, se llenó como se esperaba.
Por supuesto, esto no tiene nada que ver con la codificación de los archivos (que debe ser UTF-16). No he podido encontrar nada con la mención de este problema específico.
Mi solución:
he copiado el contenido de los Localizable.strings inglés legítimos archivo del paquete APP (no de mi fuente) en un archivo XML (cuando se compila, el archivo se convierten en .strings XML) y agregado a mi proyecto. A continuación, cargué este archivo en un diccionario al inicio, y si la llamada a NSLocalizedString devolvió la clave en lugar del valor, hice una búsqueda en el diccionario que cargué. En teoría, podrías hacer esto para todos los idiomas, pero solo estaba teniendo el problema con el inglés.
Sí, no es la respuesta al problema, pero es una solución.
¿Hay algún error? De alguna manera, el archivo no se copia. –
no, no hay ningún mensaje de error. – boreas