2010-08-16 2 views
2

J'utilise le système de notification comme mécanisme d'alerte. Si l'application est désactivée ou en arrière-plan, l'iPhone avertit l'utilisateur lorsqu'une notification arrive. Si l'application est en cours d'exécution et au premier plan, je souhaite afficher la même vue d'alerte que si elle était désactivée. Je ne peux pas obtenir cela pour le cas où l'application passe de l'arrière-plan au premier plan. Je finis par voir l'alerte deux fois si la transition était due à une notification, ou une fois si l'utilisateur cliquait sur l'icône de lancement.Iphone 4 sdk - Comment savoir si applicationWillEnterForeground a été déclenché en raison d'une notification?

Est-il possible de savoir si la transition est due à une notification de l'utilisateur en cliquant sur l'icône de lancement?

Merci.

Répondre

5

This question provides the answer. En particulier, dans la méthode didReceiveRemoteNotification, vous pouvez vérifier l'état de l'application. UIApplicationStateActive signifie qu'il est au premier plan, vous devez donc afficher l'alerte. Sinon, l'Iphone va gérer l'alerte:

UIApplicationState state = [application applicationState]; 
if (state == UIApplicationStateActive) { 
    // Show the alert 
} 
Questions connexes