2009-01-20 16 views
8

Estoy considerando cómo hacer que mi aplicación para iPhone sea lo más "a prueba de balas" posible.¿Cómo funciona applicationWillTerminate en iPhone?

En este momento, estoy pensando en cómo la aplicación responderá al usuario presionando el botón de inicio en un punto crítico en el procesamiento de la aplicación.

¿Qué exactamente pasa? ¿Se ejecutan más instrucciones en los hilos de la aplicación?

Cuando se llama a applicationWillTerminate, he leído que la aplicación "tiene unos segundos antes de que el sistema operativo mate el proceso". De nuevo, ¿qué ocurre exactamente?

Respuesta

4

Lo que he observado es que la pantalla de inicio aparece inmediatamente, pero la aplicación puede seguir ejecutándose en segundo plano durante al menos unos segundos. Si lleva demasiado tiempo, será asesinado.

4

aplicaciónWillTerminate se invoca cuando su aplicación finaliza debido a una llamada que un usuario decide realizar o cuando el sistema operativo la cancela por algún otro motivo. No puede detener la finalización de la aplicación, pero puede almacenar algunos datos que desea utilizar más adelante en este método.

Por ejemplo, si su aplicación permite al usuario buscar algo, puede guardar el término de búsqueda cuando la aplicación está a punto de finalizar (en applicationWillTerminate) para poder usarla más tarde cuando el usuario inicie sesión de nuevo en la aplicación.

Por lo tanto, la implementación del método depende de lo que quiere que su aplicación haga cuando el usuario decide abandonar la aplicación o el sistema operativo lo elimina.

+0

es la aplicación ¿Se llama aWillTerminate cuando el usuario apaga el teléfono? –

0

Oí que recibes aproximadamente 4,8 segundos para procesar desde que se llama a applicationWillTerminate, de lo contrario, muere. ¡Básicamente guarda todo lo que necesites rápidamente!

Cuestiones relacionadas