Ir para o conteúdo

Stories por push

Aprenda como configurar histórias de push para o SDK do 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, o que inclui a implementação do framework UNNotification.

A seguinte versão mínima do SDK é necessária para receber Push Stories:

Configurando Push Stories

Etapa 1: Adicionando o alvo da extensão de conteúdo de notificação

No projeto do seu app, acesse o menu File > New > Target e adicione um novo alvo Notification Content Extension e ative-o.

Seletor de alvos do Xcode criando uma Notification Content Extension para Push Stories.

O Xcode deve gerar um novo alvo para você e criar arquivos automaticamente, incluindo:

  • NotificationViewController.swift
  • MainInterface.storyboard

Etapa 2: Ativar capacidades

No Xcode, adicione a capacidade Background Modes usando o painel Signing & Capabilities ao alvo principal do app. Marque as caixas de seleção Background fetch e Remote notifications.

Painel de capacidades do Xcode mostrando Background Modes com Background fetch e Remote notifications selecionados.

Adicionando um grupo de apps

Além disso, no painel Signing & Capabilities no Xcode, adicione a capacidade App Groups tanto ao alvo principal do app quanto aos alvos da Notification Content Extension. Em seguida, clique no botão +. Use o bundle ID do seu app para criar o grupo de apps. Por exemplo, se o bundle ID do seu app for com.company.appname, você pode nomear o grupo de apps como group.com.company.appname.xyz.

Se você não adicionar seu app a um App Group, ele pode falhar ao preencher certos campos da carga útil do push e não funcionará completamente como esperado.

Etapa 3: Adicionando o framework Push Story ao seu app

Após seguir o guia de integração do Swift Package Manager, adicione BrazePushStory à sua Notification Content Extension:

No Xcode, em frameworks e bibliotecas, selecione o ícone "+" para adicionar um framework.

Seleção de produto de pacote do Xcode adicionando BrazePushStory ao alvo da extensão de conteúdo de notificação.

Adicione a seguinte linha ao seu Podfile:

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

target 'YourNotificationContentExtensionTarget' do
pod 'BrazePushStory'
end

# Only include the below if you want to also integrate Rich Push
target 'YourNotificationServiceExtensionTarget' do
pod 'BrazeNotificationService'
end

Após atualizar o Podfile, navegue até o diretório do seu projeto Xcode no terminal e execute pod install.

Baixe o BrazePushStory.zip mais recente na página de releases do GitHub, extraia-o e adicione o BrazePushStory.xcframework à Notification Content Extension do seu projeto.

Configurações de framework do Xcode mostrando BrazePushStory.xcframework adicionado com Do Not Embed selecionado.

Etapa 4: Atualizando seu controlador de visualização de notificação

Em NotificationViewController.swift, adicione a seguinte linha para importar os arquivos de cabeçalho:

import BrazePushStory

Em seguida, substitua a implementação padrão herdando BrazePushStory.NotificationViewController:

class NotificationViewController: BrazePushStory.NotificationViewController {}

Tratamento personalizado de eventos de Push Stories

Se você quiser implementar sua própria lógica personalizada para tratar eventos de notificação de Push Stories, herde BrazePushStory.NotificationViewController conforme mostrado no exemplo anterior e sobrescreva os métodos didReceive no exemplo a seguir.

import BrazePushStory
import UserNotifications
import UserNotificationsUI

class NotificationViewController: BrazePushStory.NotificationViewController {
  override func didReceive(_ notification: UNNotification) {
    super.didReceive(notification)

    // Custom handling logic
  }

  override func didReceive(_ response: UNNotificationResponse, completionHandler completion: @escaping (UNNotificationContentExtensionResponseOption) -> Void) {
    super.didReceive(response, completionHandler: completion)

    // Custom handling logic
  }
}

Etapa 5: Configurando o plist da Notification Content Extension

Abra o arquivo Info.plist da Notification Content Extension e adicione e altere as seguintes chaves em NSExtension \ NSExtensionAttributes:

Chave Tipo Valor
UNNotificationExtensionCategory String ab_cat_push_story_v2
UNNotificationExtensionDefaultContentHidden Boolean YES
UNNotificationExtensionInitialContentSizeRatio Number 0.6
UNNotificationExtensionUserInteractionEnabled Boolean YES

Além disso, adicione o seguinte dicionário de nível superior Braze ao mesmo arquivo Info.plist, substituindo REPLACE_WITH_APPGROUP pelo App Group que você criou na Etapa 2:

Chave Tipo Valor
Braze.AppGroup String REPLACE_WITH_APPGROUP

Seu arquivo Info.plist deve corresponder à seguinte imagem:

Info.plist da Notification Content Extension com as chaves de Push Stories da Braze e configurações de grupo de apps.

Etapa 6: Atualizando a integração da Braze no seu app principal

Antes de inicializar a Braze, atribua o nome do seu grupo de apps à 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)

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.

Configurando Push Stories

Etapa 1: Criar uma extensão de conteúdo de notificação

No seu projeto do Xcode, crie uma extensão de conteúdo de notificação. Para um passo a passo completo, consulte o Tutorial de Push Stories para iOS.

Etapa 2: Configurar o grupo de app para push

No arquivo config.xml do seu projeto, configure o grupo de app para push que você acabou de criar.

<preference name="com.braze.ios_push_app_group" value="NOTIFICATION_CONTENT_EXTENTION" />

Substitua PUSH_APP_GROUP pelo nome do seu grupo de app para push. Seu config.xml deve ficar semelhante ao seguinte:

<preference name="com.braze.ios_push_app_group" value="MyPushAppGroup" />

Etapa 3: Adicionar um novo alvo

Abra seu Podfile e adicione BrazePushStory ao alvo da extensão de conteúdo de notificação que você criou anteriormente. Para evitar erros de símbolos duplicados, use vinculação estática.

target 'NOTIFICATION_CONTENT_EXTENSION' do
  use_frameworks! :linkage => :static
  pod 'BrazePushStory'
end

Substitua NOTIFICATION_CONTENT_EXTENSION pelo nome da sua extensão de conteúdo de notificação. Seu Podfile deve ficar semelhante ao seguinte:

target 'MyAppNotificationContentExtension' do
  use_frameworks! :linkage => :static
  pod 'BrazePushStory'
end

Etapa 4: Reinstalar as dependências do CocoaPods

No terminal, acesse o diretório iOS 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.

Ativando Push Stories

Para o SDK do React Native, Push Stories estão disponíveis no Android por padrão.

Para ativar Push Stories no iOS usando Expo, certifique-se de que você tenha um grupo de apps definido para sua aplicação. Para saber mais, consulte Adicionando um grupo de apps.

Em seguida, configure a propriedade enableBrazeIosPushStories como true e atribua o ID do seu grupo de apps a iosPushStoryAppGroup no objeto expo.plugins em app.json:

{
  "expo": {
    "plugins": [
      [
        "@braze/expo-plugin",
        {
          ...
          "enableBrazeIosPushStories": true,
          "iosPushStoryAppGroup": "group.com.company.myApp.PushStories"
        }
      ]
    ]
  }
}

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

New Stuff!