Swift- Remover o número do crachá de notificação push?

86

Estou tentando remover o emblema do ícone rapidamente, mas o PFInstallation parece não funcionar mais. Como eu faço isso?

ByteDuck
fonte

Respostas:

236

Você pode "remover" o ícone do emblema do aplicativo definindo-o como 0:

Swift <3.0

UIApplication.sharedApplication().applicationIconBadgeNumber = 0

Swift 3.0+

UIApplication.shared.applicationIconBadgeNumber = 0

Esta pergunta mostra quando você pode usá-lo: Como limpar a contagem de crachás de notificação push no iOS?

Oxcug
fonte
4
Portanto, é prática padrão redefini-lo para 0 toda vez que o aplicativo é iniciado?
Qian Chen
4
@ElgsQianChen realmente depende do que seu aplicativo deve fazer / o que é melhor para seu público. Essa questão provavelmente é melhor atendida no UX SO.
Oxcug
1
Em segundo lugar. Talvez você quer ter certeza de que o usuário realmente lidou com a causa da notificação (por exemplo, se ler uma mensagem não lida) antes de limpá-lo. Diferentes aplicativos lidam com isso de maneira diferente. Alguns claros no lançamento, outros claros na ação do usuário no aplicativo.
Nicolas Miari
4
UIApplication.shared.applicationIconBadgeNumber = 0com Swift 3
user3766930
Eu acho que isso faz sentido, ou seja. quando o usuário sai do aplicativo.
Wrtsprt de
17

Swift 4.2

No AppDelegate, basta colocar este código:

    func applicationDidBecomeActive(_ application: UIApplication) {
        application.applicationIconBadgeNumber = 0
    }
Tiago Oliveira
fonte
9

Swift 5

No AppDelegate, didFinishLaunchingWithOptions

UIApplication.shared.applicationIconBadgeNumber = 0
Mohhamed Nabil
fonte