NSBundle pathForResource: ofType: ocasionalmente devuelve nil para un recurso

Por lo general, cuando bash cargar un recurso específico en mi aplicación a través de [[NSBundle mainBundle] pathForResource:@"iphone" ofType:@"splang"] funciona bien, pero de vez en cuando se devuelve nada. El file iphone.splang en cuestión es un file de text de ~ 275 KB que definitivamente está incluido con la aplicación (como se evidencia por lo general es posible cargar).

He verificado que es pathForResource: ofType: que devuelve nil, no el método mainBundle.

Podría ser un problema de internationalization. De acuerdo con la documentation , pathForResource solo devuelve nil si el file no se encuentra. Pero también dice:

El método primero busca un file de resources coincidente en el directory de resources no localizado del package especificado. […] Si no se encuentra un file de resources coincidentes, entonces se ve en el nivel superior de cualquier directory de ".lproj" específico de idioma disponible. (El order de búsqueda de los directorys específicos del idioma corresponde a las preferences del usuario). No recursa a través de otros subdirectorys en ninguna de estas ubicaciones.

Tal vez esté probando su código en diferentes máquinas con diferentes idiomas o el simulador.

Además, [NSBundle mainbundle] puede devolver cero, por lo que realizar cualquier llamada que también devolverá cero.

[…] Asegúrese de verificar el valor de retorno para asegurarse de tener un package válido.