2012-11-28 8 views
7

Sto creando un'app in cui sto utilizzando la notifica push Apple. Quando la mia applicazione è in background stato allora sono in grado di ricevere la notifica di un banner, ma quando il mio app è in stato attivo, allora io sono in grado di mostrare un avviso che avete ricevuto una notifica tramite questo codice: -Come visualizzare la notifica push remota come stile banner nello stato attivo dell'app?

(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {  
    UIApplicationState state = [application applicationState]; 
    if (state == UIApplicationStateActive) { 

     NSString *cancelTitle = @"Close"; 
     NSString *showTitle = @"Show"; 
     NSString *message = [[userInfo valueForKey:@"aps"] valueForKey:@"alert"]; 
     UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Some title" 
                  message:message 
                  delegate:self 
                cancelButtonTitle:cancelTitle 
                otherButtonTitles:showTitle, nil]; 
     [alertView show]; 

    } else { 
     //Do stuff that you would do if the application was not active 
    } 
} 

ma voglio mostrare la notifica come banner. Cosa farò per questo? Si prega di suggerire.

risposta

3

Non è possibile, se l'app è attiva (in esecuzione in primo piano), la notifica push viene inviata direttamente all'app. Il centro notifiche non gestirà la notifica.

Dovrai implementare una sorta di banner.

+0

Questo può aiutare: https://github.com/avielg/AGPushNote –

+0

Su iOS 9, le app Mail e Messaggi mostrano l'interfaccia utente di banner di notifica standard per nuove e-mail e messaggi in alcune situazioni. C'è una nuova API per replicare questo, o stanno usando API private? – Greg

+0

La mia ipotesi, API privata. Dal momento che non riesco a trovarlo nella documentazione. Ma puoi creare qualcosa di molto vicino a quello nativo te stesso. – rckoenes

Problemi correlati