Desidero rimuovere le notifiche precedenti che la mia app ha apportato dal Centro notifiche di iOS 5. Posso farlo? Se é cosi, come?Posso cancellare a livello di programmazione le notifiche della mia app dal Centro notifiche di iOS 5?
risposta
Per rimuovere le notifiche dal Centro notifiche, è sufficiente impostare il numero dell'icona su zero.
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
Questo funziona solo se cambia il numero, quindi se la vostra applicazione non utilizza il numero di badge dovete primo set, poi ripristinarlo.
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
Per me ha funzionato soltanto con l'invio di una notifica locale, con solo un distintivo come questo:
if([UIApplication sharedApplication].applicationIconBadgeNumber == 0) {
UILocalNotification *singleLocalPush = [[UILocalNotification alloc] init];
singleLocalPush.fireDate = [NSDate dateWithTimeIntervalSinceNow:1];
singleLocalPush.hasAction = NO;
singleLocalPush.applicationIconBadgeNumber = 1;
[[UIApplication sharedApplication] scheduleLocalNotification:singleLocalPush];
[singleLocalPush release];
} else {
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
}
E nel metodo
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
posso impostare il distintivo a 0 di nuovo .
Sì, è possibile annullare specifiche o tutte le notifiche locali chiamando
[[UIApplication sharedApplication] cancelLocalNotification:...];
o
[[UIApplication sharedApplication] cancelAllLocalNotifications];
Un metodo più semplice che uso (e non richiede badge) è quello di ripristinare la array di notifiche locali pianificate a se stesso, come segue:
UIApplication* application = [UIApplication sharedApplication];
NSArray* scheduledNotifications = [NSArray arrayWithArray:application.scheduledLocalNotifications];
application.scheduledLocalNotifications = scheduledNotifications;
Questo ha l'effetto Le notifiche programmate rimangono valide, mentre tutte le notifiche "vecchie" presenti nel Centro notifiche vengono rimosse. Tuttavia, ha anche la sensazione di qualcosa che potrebbe cambiare in una versione futura di iOS, in quanto non ho visto alcuna documentazione per questo comportamento.
Naturalmente, se si desidera rimuovere tutti notifiche, è semplicemente la seguente:
[[UIApplication sharedApplication] cancelAllLocalNotifications];
Se si desidera cancellare le notifiche in rapida e iOS 10,0
import UserNotifications
if #available(iOS 10.0, *) {
let center = UNUserNotificationCenter.current()
center.removeAllPendingNotificationRequests() // To remove all pending notifications which are not delivered yet but scheduled.
center.removeAllDeliveredNotifications() // To remove all delivered notifications
}
- 1. iOS 5 "API Centro notifiche"?
- 2. : come cancellare le notifiche?
- 3. Cancella notifiche push dal centro notifiche dopo aver selezionato uno
- 4. rileva l'impostazione del centro notifiche
- 5. Controlla le notifiche di attesa
- 6. Rimuovere una singola notifica remota dal Centro notifiche
- 7. Come cancellare le preferenze delle notifiche push di iOS per la mia applicazione?
- 8. Impostazione delle impostazioni predefinite dell'applicazione per il Centro notifiche iOS 5
- 9. Come posso gestire le notifiche push non lette in iOS?
- 10. Come posso sostituire le notifiche di MPMoviePlayer?
- 11. come visualizzare il centro notifiche sul simulatore iOS?
- 12. Notifiche push duplicate su iOS
- 13. acquisto in-app per le notifiche di abbonamenti auto-rinnovo
- 14. iOS notifiche tocco di eventi (API private)
- 15. iOS: come registrarsi per le notifiche push?
- 16. Deep Linking iOS Notifiche push
- 17. Posso registrare notifiche push all'esterno di AppDelegate.m?
- 18. Modifica lingua app a livello di programmazione
- 19. iphone e notifiche: numero massimo di notifiche?
- 20. Notifiche WPF
- 21. Ricezione di notifiche push in background
- 22. Devo abilitare le notifiche push per il mio ID app se utilizzo solo le notifiche locali?
- 23. Gestire le notifiche push
- 24. Le notifiche locali richiedono l'autorizzazione dell'utente su iOS?
- 25. notifiche pianificate di Firebase
- 26. Come utilizzare le notifiche di Realm
- 27. Rimuovere le notifiche push api?
- 28. Come inviare notifiche al Centro operativo?
- 29. Notifiche push iOS con dizionario aps vuoto
- 30. IOS UILocalNotifications live dopo che la mia app è stata cancellata ... come gestire queste notifiche?
Questo non ha fatto lavoro per me :( –
Questo funziona ... Devi impostarlo su un valore e poi resettare su 0 ...... Grazie @voidStern – Meet
@voidStern: Sei fantastico ... :) – Nilesh