# Configurando badges

<Aside type="note">
Para configurar badges para os plugins Cordova ou React Native, consulte os guias correspondentes:

* [Badges para Cordova](/pt/developer/pushwoosh-sdk/cross-platform-frameworks/cordova/setting-up-badges-for-cordova)
* [Badges para React Native](/pt/developer/pushwoosh-sdk/cross-platform-frameworks/react-native/setting-up-badges-for-react-native)
</Aside>

A partir da versão 6.4.0 do SDK do Pushwoosh para iOS, o processo de gerenciamento e configuração de badges por meio de notificações push mudou.

Se você estava usando anteriormente o número de badges para indicar o número de notificações push recebidas em seu aplicativo, você deve migrar para uma versão mais recente do SDK para iOS (6.4.0 ou posterior). As versões mais antigas serão suportadas até o final do segundo trimestre de 2022.

## Como configurar badges

Para configurar os badges, siga os passos abaixo:

1. Adicione a Notification Service Extension (File -> New -> Target...)

<img src="/shared-7.webp" alt=""/>

2. Selecione a "Notification Service Extension"

<img src="/ios-push-notifications-setting-up-badges-1.webp" alt="Adicionando Notification Service Extension"/>

3. Substitua a classe `NotificationService` gerada por uma subclasse de `PushwooshNotificationServiceExtension`. O Pushwoosh lida com a contagem de badges, evento de entrega, download de anexos e o fallback de timeout para você:

<Tabs>
<TabItem label="Swift">
```swift
import PushwooshFramework

class NotificationService: PushwooshNotificationServiceExtension {}
```
</TabItem>

<TabItem label="Objective-C">
```objective-c
#import <PushwooshFramework/PushwooshFramework.h>

@interface NotificationService : PushwooshNotificationServiceExtension
@end

@implementation NotificationService
@end
```
</TabItem>
</Tabs>

4. Adicione a capacidade de App Groups a **ambos** os alvos — o aplicativo principal e a Notification Service Extension — e use o mesmo App Group para cada um.

5. Adicione o ID do App Group ao `info.plist` do **aplicativo principal**:

```
<key>PW_APP_GROUPS_NAME</key>
<string>group.com.example.demoapp_example</string>
```

<img src="/shared-12.webp" alt="Info.plist"/>

A extensão herda esse valor do aplicativo host, então você não precisa repeti-lo no `info.plist` da extensão — adicione-o lá apenas para substituir o valor do host.

Se você preferir não usar o arquivo **info.plist**, forneça o App Group no código, sobrescrevendo `pushwooshAppGroupsName` em sua classe NotificationServiceExtension:

<Tabs>
<TabItem label="Swift">
```swift
override func pushwooshAppGroupsName() -> String? {
    "group.com.example.demoapp_example"
}
```
</TabItem>

<TabItem label="Objective-C">
```objective-c
- (NSString *)pushwooshAppGroupsName {
    return @"group.com.example.demoapp_example";
}
```
</TabItem>
</Tabs>

<LinkCard title="Exemplo" href="https://github.com/Pushwoosh/pushwoosh-quickstart-ios/tree/main/badges/badges" />


## Enviar uma notificação push com badges

Se você deseja enviar uma notificação push com badges a partir do Painel de Controle do Pushwoosh, basta adicionar o valor de badge desejado ao campo de texto **badges**, como mostrado na imagem abaixo:

<img src="/ios-push-notifications-setting-up-badges-5.webp" alt="Valor dos Badges"/>

<Aside type="note">
Você pode usar os seguintes formatos de valor para enviar badges corretamente: **+1, -1 ou 5.** Se você quiser incrementar o valor do badge, use o sinal **"+"**, se quiser decrementar os badges, use o sinal **"-"**. Você também pode definir o número exato usando, por exemplo, **5** sem sinal.
</Aside>

## Compartilhe seu feedback conosco

Seu feedback nos ajuda a criar uma experiência melhor, então adoraríamos ouvir de você se tiver algum problema durante o processo de integração do SDK. Se você enfrentar alguma dificuldade, não hesite em compartilhar suas opiniões conosco [através deste formulário](https://docs.google.com/forms/d/e/1FAIpQLSd\_0b8jwn-V\_JmoPLIxIFYbHACCQhrzidOZV3ELywoQPXRSxw/viewform).