2013-08-06 22 views
8

Sto utilizzando PushBot come servizio di notifica push, il mio problema è come reimpostare il numero di badge. Ho letto di ricerca e di utilizzare questa riga di codice:Conteggio reset badge notifica push

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; 

L'unico modo in cui il conteggio distintivo ottiene la risistemazione è che se ho smesso l'applicazione esecuzione sulla barra mulit-task e lanciare di nuovo l'applicazione, qualsiasi aiuto è molto apprezzato Grazie,

+0

Quando si desidera cancellare contare il distintivo? –

+0

Desidero cancellare il conteggio dei badge quando l'app viene riavviata. – Automator21

risposta

17

Basta fare un pulsante sul UI e sulla sua azione ha messo la riga di codice:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; 

Sarà resettarlo.

Date un'occhiata Here per alcune altre implementazioni.

14

Per cancellare il conteggio distintivo ogni volta che l'applicazione diventa attiva, è sufficiente includere il tuo riga di codice:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0]; 

Nel metodo applicationDidBecomeActive delegato del file AppDelegate.m.

applicationDidFinishLaunchingWithOptions viene richiamato solo all'avvio iniziale e non viene richiamato quando l'applicazione passa in background e torna in primo piano.

+0

Sembra funzionare, ma la volta successiva che ricevo una notifica, il conteggio non è 1. È il conteggio rimosso + 1 (il conteggio totale delle notifiche dall'installazione dell'applicazione). Qualche idea? –

+0

Ricevo anche "conta che è stato rimosso" + 1. Qualsiasi aiuto? Ho messo quel codice in 'applicationDidBecomeActive' e' applicationDidFinishLaunchingWithOptions' – Terence

+1

Stai parlando del numero del badge in una notifica remota? Spetta a te impostare sul server quando si invia la notifica remota. –

0

per SWIFT 3,0

//AppleDelgate.swift 
func applicationDidBecomeActive(_ application: UIApplication) { 
     //.... 
     application.applicationIconBadgeNumber = 0 
     //.... 
}