applicationWillTerminate quand est-il appelé et quand ne pas

Salut j'ai lu à plusieurs questions sur DONC environ applicationWillTerminate appelé et ne pas avoir appelé.

Je voulais résumer ce que j'ai compris qu'il y a plusieurs posts qui parlent différemment.

  1. Pour IOS (sans le multitâche), il est appelé toujours lorsque le bouton est pressé.

  2. Pour IOS 4 et au-dessus de

    un. il est pas appelé lors de l'appui sur bouton home (comme l'application se déplace de l'arrière-plan)

    b. elle est appelée lors de la fermeture de l'application à partir du multi-tâches dock et si l'application a un coup de résilier le drapeau en info.plist désactivé autre chose, elle n'est pas appelée. ( J'ai mis le "formulaire de Demande doit obtenir l'Application est Mort événements" et même alors, sur la fermeture de l'application dans le dock multitâche mettre fin à la fonction n'a pas appelé)

Basés sur que j'ai eu un couple de questions

Est-il une bonne pratique de l'Application doit obtenir l'Application est Mort événements drapeau? ( J'ai mis le "formulaire de Demande doit obtenir l'Application est Mort événements" et même alors, sur la fermeture de l'application dans le dock multitâche mettre fin à la fonction n'a pas appelé)

ou

Est l'enregistrement de "UIApplicationWillTerminateNotification" chose de mieux à faire que de l'info.plist la mise en?

Essentiellement, j'ai besoin de faire un peu de travail seulement lorsque l'application se termine et PAS quand il se déplace à l'arrière-plan.

ou

MODIFIER (1):
Lorsque l'application est terminée le suivant est envoyé à l'APPLICATION. Comment puis-je rattraper?

Programme du signal reçu: “SIGKILL”.

EDIT (2):

Veuillez noter : Il n'est pas appelé dans IOS 4 et ci-dessus lors de la suppression de la dock multitâche. Vous pourriez penser qu'il est. Mais dans mon cas, il ne l'est pas.

Je demande si quelqu'un sait pourquoi? Est-il autre chose que je suis absent.

Notez aussi j'ai mis le "Application doit obtenir l'Application est Mort événements" et même alors, il n'est pas appelé.

MODIFIER (3):

La réponse à la question suivante aussi n'a pas de travail.
applicationWillTerminate n'a pas appelé

Personne confrontée au même problème que moi?

  • J'ai le même problème. Une remarque: vous ne pouvez pas attraper de SIGKILL, ce signal est traité par le système d'exploitation et est l'équivalent de la suppression de toutes les ressources de l'application (donc pas moyen de votre application pour attraper ce signal).
  • merci pour cela. On revient donc à trouver comment faire "applicationWillTerminate" dans IOS 4 et au-dessus.
InformationsquelleAutor Anand | 2011-10-19