La aplicación se rechazó debido al almacenamiento de datos: ¿cómo hago para ignorar todos mis files en una carpeta?

Tengo una aplicación que descarga un montón de fotos y las almacena en una subcarpeta de la carpeta Documentos que aparentemente estaba bien hasta iOS 5.1

Ahora Apple me dice que necesito almacenarlos en otro lugar o, de alguna manera, marcarlos como si no fuera una copy de security. Esta es una actualización de la aplicación, por lo que para la mayoría de mis usuarios, los datos ya existirán en estas subcarpetas.

¿Cómo obtengo iOS para omitir todos los files en mis subcarpetas de Documentos o omitir un file en particular en la carpeta Documentos?

Sería una ENORME empresa llevar todos los files al caching como sugieren.

Leí esto, pero no estoy seguro de dónde se supone que debo implementar esto: https://developer.apple.com/library/ios/#qa/qa1719/_index.html

Puede usar NSFileNanager para enumerar todos los files y luego llamar a la function que se sugiere en su similar. Tu código sería algo así como:

 // From Apple FAQ #import <sys/xattr.h> - (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL { assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]); const char* filePath = [[URL path] fileSystemRepresentation]; const char* attrName = "com.apple.MobileBackup"; u_int8_t attrValue = 1; int result = setxattr(filePath, attrName, &attrValue, sizeof(attrValue), 0, 0); return result == 0; } - (void) addSkipBackupAttributeToItemsInFolder:(NSString*)folder { NSFileManager *fm = [NSFileManager defaultManager]; NSArray *dirContents = [fm contentsOfDirectoryAtPath:folder error:nil]; for (int curFileIdx = 0; curFileIdx < [dirContents count]; ++curFileIdx) { NSString* curString = [folder stringByAppendingPathComponent:[dirContents objectAtIndex:curFileIdx]]; NSURL* curFileUrl = [NSURL fileURLWithPath:curString]; [self addSkipBackupAttributeToItemAtURL: curFileUrl]; } } 

Y usará esto así:

  NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; [self addSkipBackupAttributeToItemsInFolder:documentsDirectory];