Ir para o conteúdo

Notificações de Rich push

Aprenda como configurar notificações por push ricas para o SDK Braze.

Pré-requisitos

Antes de poder usar esse recurso, você precisará integrar o Braze Swift SDK. Você também precisará configurar notificações por push.

Configuração de notificações por push ricas

Etapa 1: Criar uma extensão de serviço

Para criar uma extensão de serviço de notificação, acesse File > New > Target no Xcode e selecione Notification Service Extension.

Seletor de target do Xcode criando uma Notification Service Extension para push rico.

Confira se a opção Embed In Application está configurada para incorporar a extensão ao seu aplicativo.

Etapa 2: Configurar a extensão de serviço de notificação

Uma extensão de serviço de notificação é um binário próprio, empacotado junto com o seu app. Ela precisa ser configurada no Apple Developer Portal com seu próprio ID de app e perfil de provisionamento.

O ID do bundle da extensão de serviço de notificação precisa ser diferente do ID do bundle do target principal do seu app. Por exemplo, se o ID do bundle do seu app for com.company.appname, você pode usar com.company.appname.AppNameServiceExtension para a sua extensão de serviço.

Etapa 3: Adicionar um App Group

No Xcode, adicione a capacidade App Groups pelo painel Signing & Capabilities ao target principal do seu app e também ao target da Notification Service Extension. Depois, clique no botão +. Use o ID do bundle do seu app para criar o App Group. Por exemplo, se o ID do bundle do seu app for com.company.appname, você pode nomear o App Group como group.com.company.appname.xyz.

Você precisa de um App Group compartilhado para que o app principal e a Notification Service Extension possam acessar dados compartilhados. Se você não adicionar seu app a um App Group, ele pode não conseguir preencher determinados campos da carga útil do push e não funcionará totalmente como esperado.

Etapa 4: Integrar notificações por push ricas

Para um guia passo a passo sobre como integrar notificações por push ricas com BrazeNotificationService, consulte nosso tutorial.

Para ver um exemplo, confira o uso em NotificationService no nosso app de exemplos.

Adicionar o framework de push rico ao seu app

Depois de seguir o guia de integração do Swift Package Manager, adicione BrazeNotificationService à sua Notification Service Extension da seguinte forma:

  1. No Xcode, em frameworks and libraries, selecione o ícone de adição para adicionar um framework.

    O ícone de adição fica em frameworks and libraries no Xcode.

  2. Selecione o framework “BrazeNotificationService”.

    O framework "BrazeNotificationService" pode ser selecionado no modal que se abre.

Adicione o seguinte ao seu Podfile:

target 'YourAppTarget' do
  pod 'BrazeKit'
  pod 'BrazeUI'
  pod 'BrazeLocation'
end

target 'YourNotificationServiceExtensionTarget' do
  pod 'BrazeNotificationService'
end

# Only include the below if you want to also integrate Push Stories
target 'YourNotificationContentExtensionTarget' do
  pod 'BrazePushStory'
end

Depois de atualizar o Podfile, acesse o diretório do projeto do seu app Xcode no terminal e execute pod install.

Para adicionar BrazeNotificationService.xcframework à sua Notification Service Extension, consulte Integração manual.

Projeto Xcode com BrazeNotificationService.xcframework adicionado à extensão de serviço de notificação.

Solução de problemas em projetos Xcode gerados

Se você gera seu projeto Xcode com ferramentas de build como o Tuist, confirme que o projeto gerado mantém BrazeNotificationService vinculado ao target da sua Notification Service Extension e preserva os recursos dele no bundle da extensão. Algumas estruturas de projeto geradas podem colocar recursos em bundles inesperados. Nesse caso, os ativos de push rico podem não carregar em tempo de execução.

Confira os seguintes recursos para obter ajuda:

Usar sua própria UNNotificationServiceExtension

Se você precisar usar sua própria UNNotificationServiceExtension, pode chamar brazeHandle no seu método didReceive.

import BrazeNotificationService
import UserNotifications

class NotificationService: UNNotificationServiceExtension {

  override func didReceive(
    _ request: UNNotificationRequest,
    withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void
  ) {
    if brazeHandle(request: request, contentHandler: contentHandler) {
      return
    }

    // Custom handling here

    contentHandler(request.content)
  }
}

Etapa 5: Configurar o App Group na Braze

Antes de inicializar a Braze, atribua o nome do seu App Group à propriedade push.appGroup da configuração da Braze.

let configuration = Braze.Configuration(apiKey: "<YOUR-BRAZE-API-KEY>",
                                        endpoint: "<YOUR-BRAZE-ENDPOINT>")
configuration.push.appGroup = "REPLACE_WITH_APPGROUP"
let braze = Braze(configuration: configuration)

Etapa 6: Criar uma notificação Rich no seu dashboard

Sua equipe de marketing também pode criar notificações Rich pelo dashboard. Crie uma notificação por push no criador de push e anexe uma imagem ou GIF, ou informe uma URL que hospede uma imagem, GIF ou vídeo. Os ativos são baixados no recebimento das notificações por push. Portanto, se você hospeda seu próprio conteúdo, planeje-se para picos grandes e simultâneos de solicitações.

Pré-requisitos

Antes de poder usar esse recurso, você precisará integrar o SDK Cordova da Braze. Você também precisará configurar notificações por push.

Configuração de notificações por push ricas

Etapa 1: Criar uma extensão de serviço de notificação

No seu projeto Xcode, crie uma extensão de serviço de notificação. Para um passo a passo completo, consulte Tutorial de notificações por push ricas no iOS.

Etapa 2: Adicionar um novo target

Abra seu Podfile e adicione BrazeNotificationService ao target da extensão de serviço de notificação que você acabou de criar. Se BrazeNotificationService já estiver adicionado a um target, remova-o antes de continuar. Para evitar erros de símbolo duplicado, use vinculação estática.

target 'NOTIFICATION_SERVICE_EXTENSION' do
  use_frameworks! :linkage => :static
  pod 'BrazeNotificationService'
end

Substitua NOTIFICATION_SERVICE_EXTENSION pelo nome da sua extensão de serviço de notificação. Seu Podfile deve ser semelhante ao seguinte:

target 'MyAppRichNotificationService' do
  use_frameworks! :linkage => :static
  pod 'BrazeNotificationService'
end

Etapa 3: Reinstalar as dependências do CocoaPods

No terminal, acesse o diretório iOS do seu projeto e reinstale as dependências do CocoaPods.

cd PATH_TO_PROJECT/platform/ios
pod install

Pré-requisitos

Antes de poder usar esse recurso, você precisará integrar o SDK React Native da Braze. Você também precisará configurar notificações por push.

Usando o Expo para ativar notificações por push ricas

Para o SDK React Native, as notificações por push ricas estão disponíveis para Android por padrão.

Para ativar notificações por push ricas no iOS usando o Expo, configure a propriedade enableBrazeIosRichPush como true no objeto expo.plugins em app.json:

{
  "expo": {
    "plugins": [
      [
        "@braze/expo-plugin",
        {
          ...
          "enableBrazeIosRichPush": true
        }
      ]
    ]
  }
}

Por fim, adicione o identificador de bundle desta extensão de app à configuração de credenciais do seu projeto: <your-app-bundle-id>.BrazeExpoRichPush. Para mais detalhes sobre esse processo, consulte Usando extensões de app com o Expo Application Services.

New Stuff!