Estoy desarrollando una aplicación de iPhone que descarga un archivo UTF8Encoded
de un servidor, lo almacena en la carpeta Caché de la aplicación y simplemente copia su contenido a NSString* var
. Funciona en el dispositivo, pero no en el simulador, el código aquí:leyendo Local File en el simulador de iPhone se bloquea, pero no en el dispositivo real
NSLog(@"File loaded into path: %@\n", localPath);
NSError* error;
NSString* tmpString = [NSString stringWithContentsOfFile:localPath encoding:NSUTF8StringEncoding error:&error];
NSLog(@"Error: %@", error);
//Prints the length in the console to check if the file has been correctly copied in the string
NSLog(@"tmpString length:%u", [tmpString length]);
en el simulador esta porción de código imprime:
File loaded into path: /Users/username/Library/Application Support/iPhone Simulator/5.1/Applications/4FCF8FC6-4F1B-4FE5-92F6-A99EC8888E47/Library/Caches/utf8encodedFile.txt
Pero se bloquea cuando se llama al método "stringWithContentsOfFile:
", mostrando no hay errores
En el dispositivo real, todo funciona bien, imprime:
File loaded into path: /var/mobile/Applications/1EE8AEEB-D036-4ADE-AE12-836BA1F16BCB/Library/Caches/utf8encodedFile.txt
2012-06-30 19:19:24.743 appName[685:707]
Error: (null)
2012-06-30 19:19:24.745 appName[685:707] tmpString length:1423
está usted de que existe el archivo? –
Claro, lo he comprobado manualmente yendo al directorio caché en el terminal y programáticamente con el método NsFileManager para verificar si existe. Borrar el caché y cargar el archivo de nuevo no ayudó. En el dispositivo funciona sin problemas, pero no me gusta probar mi aplicación con mi dispositivo personal :( – user1493309