Quiero configurar Do not back up
en mi carpeta que está en el Document Directory
.
Encontré el código para “No hacer copia de seguridad” , pero ¿cómo puedo verificar que la carpeta esté marcada?
De acuerdo con los documentos que vinculó, si configura el método exactamente como lo tienen listado en esa página, el método devolverá YES
si el atributo está marcado correctamente.
Para iOS 5.1, ejecute la aplicación en el simulador y ejecute el siguiente comando en la Terminal:
xattr {filename}
Debería ver lo siguiente si el elemento está marcado correctamente para la exclusión:
com.apple.metadata:com_apple_backup_excludeItem
(tamaño de archivo) (nombre de archivo)
(exclusión de copia de seguridad de iCloud)
NOTA: si no se incluye nada, eso significa que se realizará una copia de seguridad del archivo (si está en la carpeta Biblioteca o Documentos) … si en su lugar aparece ‘com.apple.metadata: com_apple_backup_excludeItem: com.apple.MobileBackup’, entonces está bueno para ir.
Ejecute la aplicación en el simulador, luego use el Terminal para ejecutar este comando contra los archivos relevantes:
xattr -plxv com.apple.MobileBackup
Para iOS 5.1 o posterior, este código funciona bien para mí.
- (BOOL)addSkipBackupAttributeToItemAtPath:(NSString *)filePathString { NSURL *fileURL = [NSURL fileURLWithPath:filePathString]; assert([[NSFileManager defaultManager] fileExistsAtPath: [fileURL path]]); NSError *error = nil; BOOL success = [fileURL setResourceValue:[NSNumber numberWithBool:YES] forKey:NSURLIsExcludedFromBackupKey error:&error]; return success; }