2013-08-30 1 views
4

Je souhaite ignorer les notifications push lorsque l'application est active. Je traitement des notifications comme suit:Désactiver les alertes UrbanAirship

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 
{ 
    if (application.applicationState != UIApplicationStateActive) 
    { 
     [[PushHelper shared] processPush: userInfo]; 
    } 
} 

Mais quand l'application est active et appareil reçoit pousser notification, le UIAlertView avec le message de notification apparaît. Comment puis-je désactiver la gestion par défaut de l'UA?

Répondre

6

J'ai eu le même problème et trouvé la solution. Si définir la méthode déléguée displayNotificationAlert: de UAPushNotificationDelegate protocole avec vide corps, par exemple, alors les alertes automatiques ne seront pas affichées:

{ 
    ... 
    [[UAPush shared] registerForRemoteNotifications]; 
    [UAPush shared].pushNotificationDelegate = self; 
    ... 
} 

- (void)displayNotificationAlert:(NSString *)alertMessage 
{ 
} 
1

Si vous n'avez pas besoin de faire quoi que ce soit avec la notification push se retirer juste le [[PushHelper shared] processPush: userInfo] de votre code

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo 
{ 
    //nothing to do here 
} 

La méthode didReceiveRemoteNotification est appelée uniquement lorsque l'application est en cours d'exécution.

+0

Impressionnant)) Et comment puis-je gérer la notification, lorsque app retourne de fond après avoir enregistré le message du centre de notification? – scholl

+0

vous devez le gérer dans la méthode didFinishLaunchingWithOption. La charge utile de notification sera dans le dictionnaire des options –

Questions connexes