Una de mis aplicaciones, muy ocasionalmente, informará su almacenamiento (a través de Configuración -> General -> Uso -> Almacenamiento) como 4 GB cuando, en realidad, el tamaño total de todos los archivos en la aplicación Sandbox (documentos, biblioteca, tmp) tiene un promedio de 10 MB aproximadamente.Aplicación que informa uso/almacenamiento incorrectos
Estoy como en mi ingenio y me pregunto si alguien ha experimentado algo como esto. Tengo la sospecha de que es algo relacionado con UIDocument, pero no puedo estar seguro. Parece que es muy poco lo que se puede hacer ahora para archivar un radar.
En algunos casos, la aplicación obligará al sistema a presentar un cuadro de diálogo advirtiendo al usuario de que el sistema se está quedando sin almacenamiento. Cuando esto sucede, parece que el sistema reconcilia la diferencia entre el almacenamiento que cree que usa la aplicación y la realidad, y los números de almacenamiento volverán a reducirse a 10 MB más o menos.
Es realmente extraño.
Se agradecerá cualquier idea sobre cosas que pueda ver.
La implementación de contentsForType: Error:
- (id) contentsForType: (NSString *) inTypeName
error: (NSError **) outError
{
NSFileWrapper *newWrapper, *audioFileWrapper;
NSString *audioFilename;
NSURL *newAudioWrapperURL;
newWrapper = [[[NSFileWrapper alloc] initDirectoryWithFileWrappers: nil] autorelease];
// add updated info
[newWrapper addRegularFileWithContents: [NSKeyedArchiver archivedDataWithRootObject: self.testInfo] preferredFilename: QSDocumentInfoKey];
// scan audio files and clean up where needed
for (NSDictionary *wordInfo in self.wordInfoList) {
if ((audioFilename = [wordInfo objectForKey: QSInfoAudioKey]) != nil) {
newAudioWrapperURL = [self.fileURL URLByAppendingPathComponent: audioFilename];
if ([[NSFileManager defaultManager] fileExistsAtPath: [newAudioWrapperURL path]]) {
audioFileWrapper = [[[NSFileWrapper alloc] initWithURL: newAudioWrapperURL options: 0 error: nil] autorelease];
[newWrapper addFileWrapper: audioFileWrapper];
}
}
}
self.fileWrapper = newWrapper;
return self.fileWrapper;
}
¿Cómo está almacenando los datos de su aplicación? – jrtc27
¿Qué hace su aplicación (no necesita detalles)? ¿Cobran algo? Descargar cualquier cosa ¿Alguna razón por la que algo puede salir mal y una matriz o cualquier otra cosa que anote se vuelva muy grande? ¿Sucede también en el simulador? – Ali
Guardar archivos mediante UIDocument utilizando NSFileWrapper. Otra cosa peculiar: ni siquiera tengo que haber guardado nada para que esto suceda. El último intento de almacenar información puede haber sido horas o hace un día y esto sucederá al azar. –