Notificação push customizada em primeiro plano para iOS
A partir da versão 6.10.0, você pode integrar o módulo PushwooshForegroundPush para customizar notificações push em primeiro plano quando os alertas nativos do sistema iOS estiverem desativados.
1. Desative os alertas de push nativos em primeiro plano
Anchor link toAdicionando Pushwoosh_SHOW_ALERT = false ao seu Info.plist.
<key>Pushwoosh_SHOW_ALERT</key><false/>2. Integrando o Módulo PushwooshForegroundPush
Anchor link toSwift Package Manager

Cocoapods
# Uncomment the next line to define a global platform for your project# platform :ios, '13.0'
target 'MyApp' do # Comment the next line if you don't want to use dynamic frameworks use_frameworks!
pod 'PushwooshXCFramework' pod 'PushwooshFramework/PushwooshForegroundPush'
end3. Adicione a Configuração PushwooshForegroundPush no AppDelegate
Anchor link toimport UIKitimport PushwooshFrameworkimport PushwooshForegroundPush
@mainclass AppDelegate: UIResponder, UIApplicationDelegate, PWMessagingDelegate, PWForegroundPushDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
Pushwoosh.ForegroundPush.foregroundNotificationWith(style: .style1, duration: 5, vibration: .notification, disappearedPushAnimation: .balls)
Pushwoosh.ForegroundPush.delegate = self
return true }
func pushwoosh(_ pushwoosh: Pushwoosh, onMessageReceived message: PWMessage) { if let payload = message.payload { // Pushwoosh method Pushwoosh.ForegroundPush.showForegroundPush(userInfo: payload) } }}Usando o Método foregroundNotificationWith
O método foregroundNotificationWith permite que você exiba uma notificação push customizada em primeiro plano com estilo, duração e feedback tátil configuráveis.
Assinatura do Método (Swift / Objective-C):
@objcstatic func foregroundNotificationWith( style: PWForegroundPushStyle, duration: Int, vibration: PWForegroundPushHapticFeedback, disappearedPushAnimation: PWForegroundPushDisappearedAnimation)Parâmetros:
style(PWForegroundPushStyle)
- Atualmente, apenas o style1 está disponível.
duration(Int)
- Especifica por quanto tempo a notificação será exibida antes de desaparecer (em segundos).
vibration(PWForegroundPushHapticFeedback)
- Controla o feedback tátil quando a notificação é exibida. Opções disponíveis:
case none // Sem vibraçãocase light // Vibração levecase medium // Vibração médiacase heavy // Vibração fortecase soft // Vibração suavecase rigid // Vibração rígidacase notification // Vibração de notificação padrãodisappearedPushAnimation(PWForegroundPushDisappearedAnimation)
- Animação de desaparecimento do push
case balls = 0case regularPush4. Implementando o Método Delegate didTapForegroundPush
Anchor link toPara lidar com os toques do usuário em notificações push customizadas em primeiro plano, implemente o método do protocolo PWForegroundPushDelegate:
// Lida com o toque no push em primeiro planofunc didTapForegroundPush(_ userInfo: [AnyHashable : Any]) { print("Foreground custom push: \(userInfo)")
// Realize qualquer ação, ex: navegar para uma tela específica // navigateToScreen(for: userInfo)}Notas:
- Este método é chamado quando o usuário toca em um push customizado em primeiro plano.
- userInfo contém o payload da notificação.
- Certifique-se de definir
Pushwoosh.ForegroundPush.delegate = selfapós a configuração.
5. Parâmetros Opcionais para Customizar Notificações Push em Primeiro Plano
Anchor link toO módulo PushwooshForegroundPush fornece vários parâmetros opcionais para customizar a aparência e o comportamento de suas notificações push em primeiro plano. Eles podem ser definidos globalmente através de propriedades estáticas.
| Propriedade | Tipo | Descrição | Padrão |
|---|---|---|---|
| useLiquidView | Bool | Usa a visualização Liquid Glass no iOS 26. | false |
| gradientColors | [UIColor]? | Array opcional de cores para um fundo gradiente. | nil |
| backgroundColor | UIColor? | Cor de fundo para o push. Se for nulo e gradientColors não estiver definido, o gradiente padrão é usado. | Gradiente padrão do sistema |
| usePushAnimation | Bool | Se deve animar o push quando exibido. | true |
| titlePushColor | UIColor? | Cor do texto do título da notificação. O padrão é o branco do sistema se for nulo. | white |
| messagePushColor | UIColor? | Cor do texto da mensagem da notificação. O padrão é o branco do sistema se for nulo. | white |
| titlePushFont | UIFont? | Fonte do texto do título da notificação. O padrão é a fonte do sistema se for nulo. | Fonte padrão do sistema |
| messagePushFont | UIFont? | Fonte do texto da mensagem da notificação. O padrão é a fonte do sistema se for nulo. | Fonte padrão do sistema |
Resumo:
- Swift 5.13+ + iOS 26 → Liquid Glass
- Swift 5.13+ + iOS < 26 → UIView Padrão
- Swift < 5.13 → Sempre visualização desfocada (sem suporte a Liquid Glass)
Exemplo de Uso:
Pushwoosh.ForegroundPush.useLiquidView = truePushwoosh.ForegroundPush.gradientColors = [.red, .orange, .yellow]Pushwoosh.ForegroundPush.titlePushColor = .redPushwoosh.ForegroundPush.messagePushColor = .greenPushwoosh.ForegroundPush.backgroundColor = .blackPushwoosh.ForegroundPush.titlePushFont = .boldSystemFont(ofSize: 22)Pushwoosh.ForegroundPush.messagePushFont = .italicSystemFont(ofSize: 15)Pushwoosh.ForegroundPush.usePushAnimation = false6. Exemplo de Push em Primeiro Plano
Anchor link toEste exemplo demonstra como exibir uma notificação push customizada em primeiro plano com título, mensagem, cartões e animação GIF.
É isso. Você configurou com sucesso as notificações push customizadas em primeiro plano no iOS com a Pushwoosh.