Stories por push
Saiba como configurar stories por push para o Braze SDK.
Prerequisites
Before you can use this feature, you’ll need to integrate the Cordova Braze SDK. Você também precisará configurar notificações por push, o que inclui implementar o UNNotification
framework.
As seguintes versões do SDK são necessárias para receber Push Stories:
Configurando Push Stories
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
ao seu 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.
Após atualizar o Podfile, navegue até o diretório do seu projeto de app Xcode no 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)
Prerequisites
Before you can use this feature, you’ll need to integrate the Cordova Braze SDK. You’ll also need to set up push notifications.
Setting up push stories
Step 1: Create a notification content extension
In your Xcode project, create a notification content extension. For a full walkthrough, see iOS Push Stories Tutorial.
Step 2: Configure your push app group
In your project’s config.xml
file, configure the push app group you just created.
1
<preference name="com.braze.ios_push_app_group" value="NOTIFICATION_CONTENT_EXTENTION" />
Replace PUSH_APP_GROUP
with the name of your push app group. Your config.xml
should be similar to the following:
1
<preference name="com.braze.ios_push_app_group" value="MyPushAppGroup" />
Step 3: Add a new target
Open your Podfile and add BrazePushStory
to the notification content extension target you created previously. To avoid duplicate symbol errors, use static linking.
1
2
3
4
target 'NOTIFICATION_CONTENT_EXTENSION' do
use_frameworks! :linkage => :static
pod 'BrazePushStory'
end
Replace NOTIFICATION_CONTENT_EXTENSION
with the name of your notification content extension. Your Podfile should be similar to the following:
1
2
3
4
target 'MyAppNotificationContentExtension' do
use_frameworks! :linkage => :static
pod 'BrazePushStory'
end
Step 4: Reinstall your CocoaPods dependencies
In the terminal, go to your iOS directory and reinstall your CocoaPod dependencies.
1
2
cd PATH_TO_PROJECT/platform/ios
pod install
Prerequisites
Before you can use this feature, you’ll need to integrate the React Native Braze SDK. Você também precisará configurar notificações por push.
Capacitação de stories por push
Para o React Native SDK, as stories por push estão disponíveis para Android por padrão.
Para ativar os stories por push no iOS usando o Expo, é necessário ter um grupo de app definido para seu aplicativo. Para saber mais, veja Adicionando um grupo de app.
Em seguida, configure a propriedade enableBrazeIosPushStories
para true
e atribua o ID do grupo de app a iosPushStoryAppGroup
em seu objeto expo.plugins
em app.json
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"expo": {
"plugins": [
[
"@braze/expo-plugin",
{
...
"enableBrazeIosPushStories": true,
"iosPushStoryAppGroup": "group.com.company.myApp.PushStories"
}
]
]
}
}
Por fim, adicione o identificador de pacote para essa extensão de app à configuração de credenciais de seu projeto: <your-app-bundle-id>.BrazeExpoPushStories
. Para obter mais detalhes sobre esse processo, consulte Uso de extensões de app com o Expo Application Services.
Se estiver usando stories por push com o Expo Application Services, use o sinalizador EXPO_NO_CAPABILITY_SYNC=1
ao executar eas build
. Há um problema conhecido na linha de comando que remove o recurso Grupos de app do perfil de provisionamento de sua extensão.