Stories por push
As Push Stories permitem que os profissionais de marketing usem a funcionalidade de carrossel de fotos para criar uma sequência de páginas em uma notificação por push. Estas páginas consistem em uma imagem, ação de clique, título e descrição.
Configurar Push Stories para o seu app iOS requer etapas adicionais além de integrar notificações por push padrão, que estão descritas neste artigo.
Pré-requisitos
As seguintes versões do SDK são necessárias para receber Push Stories:
Certifique-se de que você seguiu o tutorial de integração de notificação por push para ativar push no seu app. Como parte desta tarefa, você deve ter implementado a estrutura UNNotification
, que é necessária para este recurso.
Etapa 1: Adicionando o alvo de Extensão de Conteúdo de Notificação
No seu projeto de app, Acessar o menu Arquivo > Novo > Alvo e adicionar um novo Notification Content Extension
alvo e ativá-lo.
O Xcode deve gerar um novo alvo e criar arquivos automaticamente para você, incluindo:
NotificationViewController.swift
MainInterface.storyboard
Etapa 2: Ativar capacidades
No Xcode, adicione a capacidade de Modos de Fundo usando o painel Assinatura e Capacidades ao alvo principal do app. Selecione as caixas de seleção Busca em segundo plano e Notificações remotas.
Adicionando um grupo de app
Além disso, no painel Assinatura e Capacidades no Xcode, adicione a capacidade Grupos de app ao seu alvo principal do app, bem como aos alvos da Extensão de Conteúdo de Notificação. Em seguida, clique no botão +. Use o ID do pacote do seu app para criar o grupo de app. Por exemplo, se o ID do pacote do seu app for com.company.appname
, você pode nomear seu grupo de app group.com.company.appname.xyz
.
Grupos de app neste contexto referem-se à App Groups Entitlement da Apple e não ao seu ID de espaço de trabalho Braze (anteriormente grupo de app).
Se você não adicionar seu app a um grupo de app, seu app pode falhar em preencher certos campos da carga útil do push e não funcionará totalmente como esperado.
Etapa 3: Adicionando o framework de story por push ao seu app
Depois de seguir o guia de integração do Swift Package Manager, adicione BrazePushStory
a Notification Content Extension
:
Adicione a seguinte linha ao seu Podfile:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
Para obter instruções sobre como implementar o Rich push, consulte Notificações Rich.
Depois de atualizar o Podfile, navegue até o diretório de seu projeto de app do Xcode em seu terminal e execute pod install
.
Baixe o último BrazePushStory.zip
da página de lançamentos do GitHub, extraia-o e adicione o BrazePushStory.xcframework
ao Notification Content Extension
do seu projeto.
Certifique-se de que Não Incorporar esteja selecionado para BrazePushStory.xcframework na coluna Incorporar.
Etapa 4: Atualizando seu controlador de visualização de notificações
Em NotificationViewController.swift
, adicione a seguinte linha para importar os arquivos de cabeçalho:
1
import BrazePushStory
Em seguida, substitua a implementação padrão herdando BrazePushStory.NotificationViewController
:
1
class NotificationViewController: BrazePushStory.NotificationViewController {}
Eventos de story por push de manipulação personalizada
Se você quiser implementar sua própria lógica personalizada para lidar com eventos de notificação de story por push, herde BrazePushStory.NotificationViewController
como acima e substitua os métodos didReceive
como abaixo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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: Definindo a extensão de conteúdo de notificação plist
Abra o Info.plist
arquivo do Notification Content Extension
, depois adicione e altere as seguintes chaves em NSExtension \ NSExtensionAttributes
:
Chave | Tipo | Valor |
---|---|---|
UNNotificationExtensionCategory |
String | ab_cat_push_story_v2 |
UNNotificationExtensionDefaultContentHidden |
Booleano | YES |
UNNotificationExtensionInitialContentSizeRatio |
Número | 0.6 |
UNNotificationExtensionUserInteractionEnabled |
Booleano | YES |
Seu Info.plist
arquivo deve corresponder à seguinte imagem:
Etapa 6: Atualizando a integração da Braze no seu app principal
Antes de inicializar o Braze, atribua o nome do seu grupo de app à propriedade push.appGroup
da configuração do Braze.
1
2
3
4
let configuration = Braze.Configuration(apiKey: "<YOUR-BRAZE-API-KEY>",
endpoint: "<YOUR-BRAZE-ENDPOINT>")
configuration.push.appGroup = "REPLACE_WITH_APPGROUP"
let braze = Braze(configuration: configuration)