Pular para o conteúdo

Transporte gRPC

O módulo PushwooshGRPC fornece uma camada de transporte gRPC opcional que pode melhorar o desempenho da rede para comunicação com os servidores Pushwoosh. Quando disponível, o SDK usa automaticamente o gRPC para os métodos de API suportados e recorre ao REST se o gRPC não estiver disponível.

Como funciona

Anchor link to

Por padrão, o SDK da Pushwoosh se comunica com os servidores usando a API REST sobre HTTPS. O módulo PushwooshGRPC adiciona um transporte gRPC alternativo que oferece várias vantagens:

  • Menor latência — o gRPC usa HTTP/2 com conexões persistentes
  • Tamanho de payload menor — os Protocol Buffers são mais compactos que o JSON
  • Multiplexação — várias solicitações podem ser enviadas por uma única conexão

Fallback automático

Anchor link to

O módulo inclui resiliência integrada:

CenárioComportamento
gRPC disponívelUsa o transporte gRPC
gRPC indisponívelRecorre ao REST
Erro de redeTenta novamente com REST

Requisitos

Anchor link to
RequisitoVersão
iOS13.0+
Xcode14.0+
Swift5.0+

Instalação

Anchor link to

Swift Package Manager

Anchor link to

Adicione PushwooshGRPC ao seu target ao integrar o SDK da Pushwoosh:

  1. No Xcode, vá para File → Add Package Dependencies
  2. Insira a URL do pacote: https://github.com/Pushwoosh/Pushwoosh-XCFramework
  3. Selecione PushwooshGRPC além dos frameworks necessários
  • PushwooshFramework
  • PushwooshCore
  • PushwooshBridge

Adicione o subspec gRPC ao seu Podfile:

target 'MyApp' do
use_frameworks!
pod 'PushwooshXCFramework'
pod 'PushwooshXCFramework/PushwooshGRPC'
end

Em seguida, execute:

Terminal window
pod install

Nenhuma alteração de código é necessária. Depois de adicionar o módulo PushwooshGRPC ao seu projeto, ele funciona automaticamente:

  1. No lançamento do aplicativo, o SDK detecta que o transporte gRPC está disponível
  2. As chamadas de API são roteadas através do gRPC quando possível
  3. Se o gRPC falhar, o SDK recorre automaticamente ao REST

Métodos suportados

Anchor link to

Os seguintes métodos de API suportam o transporte gRPC:

MétodoSuporte gRPC
Registro de dispositivoSim
Tags (set/get)Sim
Rastreamento de abertura de aplicativoSim
Estatísticas de pushSim

Casos de uso

Anchor link to

O módulo PushwooshGRPC é particularmente útil para:

  • Rastreamento de eventos de alta frequência — Overhead reduzido para aplicativos que enviam muitos eventos
  • Aplicações em tempo real — Menor latência para operações sensíveis ao tempo
  • Ambientes com largura de banda limitada — Tamanhos de payload menores economizam dados

Solução de problemas

Anchor link to

Verificando se o módulo está ativo

Anchor link to

Verifique os logs do console do Xcode quando seu aplicativo for iniciado. Você deve ver uma mensagem de log como:

[Pushwoosh] gRPC transport: ENABLED

Forçando o transporte REST

Anchor link to

Se você precisar desativar o gRPC temporariamente para depuração, pode remover o módulo PushwooshGRPC do seu target. O SDK usará automaticamente o transporte REST quando o gRPC não estiver disponível.