2010-05-17 10 views
5

En mi aplicación de iPhone, deseo proporcionar algún tipo de controlador de terminación de aplicaciones que realice un trabajo final (borre algunos datos confidenciales) antes de que la aplicación finalice.iphone - cómo manejar adecuadamente situaciones excepcionales (¿señales?)

que quieren manejar la mayor cantidad de situaciones de terminación como sea posible:
1) usuario termina la aplicación
2) El dispositivo se queda sin batería
3) El sistema finaliza la aplicación debido a alguna razón (por ejemplo, sin memoria o congelamiento de la aplicación)
4) Bloqueos de la aplicación (EXC_BAD_ACCESS o SIGSEGV)

¿Alguna otra situación excepcional?
¿Cuál es la mejor manera de lograr esto (por ejemplo, el método applicationWillTerminate llamado en la situación 2)?
¿Es posible realizar la limpieza en un controlador de señal (incluye las llamadas al marco de seguridad de iPhone)?

respecto

+0

¿Sus datos confidenciales están escritos en un almacenamiento persistente? ¿Hay alguna manera de crearlo en la memoria? Si usa SQLite, es compatible con las bases de datos de la memoria. –

+0

No, mis datos están almacenados en el llavero :) Sin embargo, estoy trabajando en una aplicación de banca electrónica y mi cliente quiere que encripte manualmente todos los datos (incluidas las claves) antes de almacenarlos en el llavero. Dado que esto no es compatible con el SDK, tengo que hacer algún tipo de truco con respecto a las claves y la firma de datos (consulte mi publicación de la función de estado aquí: http://stackoverflow.com/questions/2826090/iphone-data-signing-using- nsdata-of-the-private-key). Así que guardo la versión descifrada de las llaves en el llavero durante la vida útil de la aplicación para poder hacer la firma, y ​​luego en la terminación de la aplicación me gustaría eliminarla. – pmilosev

Respuesta

1

Esta oportuna post le ayudará con 4) para empezar.

Usted sabe cuándo su aplicación va a terminar desde su delegado de aplicación y puede escuchar las notificaciones de cambios de batería, consulte UIDevice.

+0

gracias a estas costuras como un buen tutorial sobre lo que iba a hacer. – pmilosev

Cuestiones relacionadas