2010-07-25 6 views
7

Tengo una aplicación básica para almacenar, buscar y manipular datos. Operaciones CRUD básicas. En varios lugares de mi código donde estoy almacenar o actualizar estos datos, Tengo básicamente esto:¿Cómo se manejan correctamente los datos básicos Guardar errores wrt experiencia del usuario en iPhone?

NSError *error; 
if (![self.managedObjectContext save:&error]) { 
    // TODO: Handle this error 
    NSLog(@"Error while saving data %@, %@", error, [error userInfo]); 
} 

¿Qué hacen la mayoría de la gente, la experiencia del usuario en cuanto, cuando este tipo de cosas están así?

Lo único que viene a la mente es simplemente mostrar algo horrible UIAlertView con un mensaje vago de que algo salió mal; No estoy seguro de cómo recuperar estas cosas.

Por razones de argumentación, supongamos que mi modelo tiene poca o ninguna validación, por lo que los únicos errores que podrían producirse serían algo terriblemente incorrecto o un problema de programación.

¿Alguna buena idea sobre la experiencia del usuario?

+0

¿Puede el usuario hacer algo al respecto? ¿O está completamente fuera del control del usuario? ¿Hay ** nada ** que puedan hacer para apagar la computadora? –

+0

Sí, supongamos que es una situación en la que no pueden hacer mucho; como una llamada a [NSManagedObjectContext save:] falló. – davetron5000

Respuesta

5

Jakob Nielsen tiene un few concise guidelines es posible que desee comprobar; de todo lo que propone, el que sugiero que indique en un mensaje de error que no es culpa del usuario. Según mi propia experiencia en pruebas de usuario, la mayoría de los usuarios creen que hicieron algo mal cuando aparece un error, y esto lleva a la frustración.

Tal vez algo como:

Hubo un problema al guardar: no se preocupe que no es tu culpa! Si reinicias la aplicación, puedes intentarlo de nuevo. Pero por favor, póngase en contacto con [contacto de desarrollador] y dígale que el error fue [código de error corto, memorable]

0

En un caso como este, creo que lo mejor sería presentar una alerta al usuario y salir de la aplicación.

+0

¿Algún consejo sobre la redacción? Los puse, y terminé con un montón de errores "El error fue guardar tu Widget, intente reiniciar la aplicación". Odio esas cosas, pero no estoy seguro de qué más hacer? – davetron5000

0

Respuesta corta es que tengo nunca tuvo un error de guardado en la producción. Normalmente hago estas afirmaciones y les pido que bloqueen la aplicación. Esto es para asegurarme de que los atrape durante el desarrollo.

Si su aplicación está bien escrita, no debería tener una de estas cuando un usuario ejecuta la aplicación.

En cuanto al texto, depende de su aplicación y no hay una regla general para ellos.

+0

Si bien estoy de acuerdo con el sentimiento, ¿no debería manejar estos de ALGUNA manera, simplemente para manejar los casos extremos que o se perdió, o los que se manejan, pero por alguna razón suceden de todos modos? (Por ejemplo, el mal funcionamiento del dispositivo provocó que se voltee un poco) – RonLugge

+0

, una vez que comience a agregar reglas de validación o restricciones únicas, obtendrá errores de guardado. – malhal

+0

Solo si no los maneja correctamente en su Interfaz de usuario y/o políticas de combinación. –

Cuestiones relacionadas