Hola, somos Arume

Desarrollamos páginas web, aplicaciones para móviles, capas de realidad aumentada y aplicaciones para Facebook. Nos apasiona la informática y somos unos perfeccionistas incurables; por eso en nuestros proyectos utilizamos estándares.

tel. 625 519 694

Mendaña de Neyra, 34, 3º B, 15008, A Coruña

Autenticarse

Registrarse. ¿Has olvidado tu contraseña?

Etiquetas

Saltar las etiquetas

Suscríbete a las RSS

Estás en:

  • Inicio >
  • Blog >
  • iCloud: excluir ficheros del backup

iCloud: excluir ficheros del backup

22 Abr 2013 por Cruz

Comentarios: 0

iCloud

Muchas aplicaciones necesitan cargar inicialmente una gran base de datos. Existen numerosos tutoriales que nos enseñan cómo añadir a nuestro proyecto el fichero SQL y cargar los datos de forma persistente en nuestro dispositivo. Lo que no suelen explicar estos tutoriales es que después de hacer la carga del SQL inicial, deberíamos marcar el fichero como "No añadir a las copias de seguridad".

En este artículo explicaremos por qué y cómo hacerlo.

Si un dispositivo tiene activado iCloud, se harán copias de seguridad de los datos de nuestras aplicaciones. Para optimizar el espacio en iCloud y las copias de seguridad existen unas normas que se deben seguir y que se pueden consultar en iOS Data Storage Guidelines. Si se incumplen, nuestra aplicación será rechazada al ser revisada.

Mi primera aplicación (Creciendo) fue rechazada por el siguiente motivo: "2.23: Apps must follow the iOS Data Storage Guidelines or they will be rejected". En mi caso existe un fichero .sqlite de 2.5 Mb que se utiliza la primera vez que se entra en la aplicación para crear la base de datos. Este fichero no se vuelve a usar. Tal como se indica en iOS Data Storage Guidelines debería marcarlo como "No añadir a las copias de seguridad", ya que no contiene datos creados por el usuario ni modificables.

Marcar un fichero como "No añadir a las copias de seguridad" es muy fácil en las versiones de iOS 5.1 o posteriores (para versiones anteriores leer Technical Q&A QA1719 de la documentación de Apple Developer) bastará con cambiar la propiedad NSURLIsExcludedFromBackupKey de nuestro fichero:

NSURL *URL = [[NSURL alloc] initFileURLWithPath:defaultDBPath];
BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
                              forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success){
    NSLog(@"Error eliminando %@ del backup %@", [URL lastPathComponent], error);
}

donde defaultDBPath es un NSString con la ruta y nombre del fichero en cuestión.

Comentarios

0 comentarios. Comentar.

Comentar

Comentar de forma anónima

Puedes comentar poniendo cualquier nombre o apodo, exceptuando los nombres de usuarios registrados. Máximo de 50 caracteres.

Comentar como usuario registrado

Registrarse. ¿Has olvidado tu contraseña?