Skip to content

Integração de envio de mensagens no app

Este artigo de referência aborda as diretrizes de configuração de envio de mensagens no app para a plataforma Unity.

Configuração do comportamento padrão de mensagens no app

No Android, as mensagens no app da Braze são automaticamente exibidas de forma nativa. Para desativar essa funcionalidade, desmarque a opção Exibir automaticamente mensagens no app no editor de configuração do Braze.

Como alternativa, você pode definir com_braze_inapp_show_inapp_messages_automatically como false em braze.xml do seu projeto Unity.

A operação inicial de exibição de mensagens no app pode ser definida na configuração do Braze por meio da “Operação de exibição inicial do gerenciador de mensagens no app”.

No iOS, as mensagens no app da Braze são automaticamente exibidas de forma nativa. Para desativar essa funcionalidade, defina os ouvintes de objetos de jogo no editor de configuração do Braze e certifique-se de que Braze Displays In-App Messages não esteja selecionado.

A operação inicial de exibição de mensagens no app pode ser definida na configuração do Braze por meio da “Operação de exibição inicial do gerenciador de mensagens no app”.

Envio de mensagens no app para configuração do comportamento de exibição

Opcionalmente, você pode alterar o comportamento de exibição das mensagens no app em tempo de execução por meio do seguinte:

1
2
3
4
5
6
7
8
// Sets in-app messages to display immediately when triggered.
Appboy.AppboyBinding.SetInAppMessageDisplayAction(BrazeUnityInAppMessageDisplayActionType.IAM_DISPLAY_NOW);

// Sets in-app messages to display at a later time and be saved in a stack.
Appboy.AppboyBinding.SetInAppMessageDisplayAction(BrazeUnityInAppMessageDisplayActionType.IAM_DISPLAY_LATER);

// Sets in-app messages to be discarded after being triggered.
Appboy.AppboyBinding.SetInAppMessageDisplayAction(BrazeUnityInAppMessageDisplayActionType.IAM_DISCARD);

Exibição de mensagens no app sob demanda

Você pode exibir a próxima mensagem no app disponível no stack por meio do método DisplayNextInAppMessage(). As mensagens são adicionadas a essa pilha de mensagens salvas se DISPLAY_LATER ou BrazeUnityInAppMessageDisplayActionType.IAM_DISPLAY_LATER for escolhido como a ação de exibição de mensagens no app.

1
Appboy.AppboyBinding.DisplayNextInAppMessage();

Recebimento de dados de mensagens no app no Unity

Você pode registrar objetos de jogo Unity para serem notificados sobre mensagens no app. Recomendamos configurar os ouvintes de objetos de jogo no editor de configuração do Braze. No editor de configuração, os ouvintes devem ser definidos separadamente para Android e iOS.

Se você precisar configurar o ouvinte do objeto do jogo em tempo de execução, use AppboyBinding.ConfigureListener() e especifique BrazeUnityMessageType.IN_APP_MESSAGE.

Análise de mensagens no app

As mensagens string recebidas em seu retorno de chamada de objeto de jogo de mensagem no app podem ser analisadas em nossos objetos de modelo pré-fornecidos por conveniência.

Use InAppMessageFactory.BuildInAppMessage() para analisar sua mensagem no app. O objeto resultante será uma instância de IInAppMessage.cs ou IInAppMessageImmersive.cs dependendo de seu tipo.

Exemplo de retorno de chamada de mensagem no app

1
2
3
4
5
6
7
8
9
10
// Automatically logs a button click, if present.
void InAppMessageReceivedCallback(string message) {
  IInAppMessage inApp = InAppMessageFactory.BuildInAppMessage(message);
  if (inApp is IInAppMessageImmersive) {
    IInAppMessageImmersive inAppImmersive = inApp as IInAppMessageImmersive;
    if (inAppImmersive.Buttons != null && inAppImmersive.Buttons.Count > 0) {
      inAppImmersive.LogButtonClicked(inAppImmersive.Buttons[0].ButtonID);
    }
  }
}

Suporte a GIFs

You can add animated GIFs to your in-app messages using the native Braze Android SDK. By default, the Android SDK uses HTML in-app messages to display GIFs.

For all other in-app message types, you’ll need to use a custom image library. To learn more, see Android In-App Messaging: GIFs.

You can add animated GIFs to your in-app messages using the native Braze Swift SDK. By default, all Braze in-app messages support GIFs. For a full walkthrough, see Tutorial: GIF Support for Swift In-App Messages.

Análise de dados

Os cliques e impressões devem ser registrados manualmente para mensagens no app não exibidas diretamente pelo Braze.

Use LogClicked() e LogImpression() em IInAppMessage para registrar os cliques e as impressões da sua mensagem.

Use LogButtonClicked(int buttonID) on IInAppMessageImmersive para registrar os cliques nos botões. Observe que os botões são representados como listas de instânciasInAppMessageButton cada uma das quais contém um ButtonID.

Ouvintes de ação personalizados

Se precisar de mais controle sobre como um usuário interage com as mensagens no app, use um BrazeInAppMessageListener e atribua-o a Appboy.AppboyBinding.inAppMessageListener. Para todos os delegados que você não quiser usar, basta deixá-los como null.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
BrazeInAppMessageListener listener = new BrazeInAppMessageListener() {
  BeforeInAppMessageDisplayed = BeforeInAppMessageDisplayed,
  OnInAppMessageButtonClicked = OnInAppMessageButtonClicked,
  OnInAppMessageClicked       = OnInAppMessageClicked,
  OnInAppMessageHTMLClicked   = OnInAppMessageHTMLClicked,
  OnInAppMessageDismissed     = OnInAppMessageDismissed,
};
Appboy.AppboyBinding.inAppMessageListener = listener;

public void BeforeInAppMessageDisplayed(IInAppMessage inAppMessage) {
  // Executed before an in-app message is displayed.
}

public void OnInAppMessageButtonClicked(IInAppMessage inAppMessage, InAppMessageButton inAppMessageButton) {
  // Executed whenever an in-app message button is clicked.
}

public void OnInAppMessageClicked(IInAppMessage inAppMessage) {
  // Executed whenever an in-app message is clicked.
}

public void OnInAppMessageHTMLClicked(IInAppMessage inAppMessage, Uri uri) {
  // Executed whenever an HTML in-app message is clicked.
}

public void OnInAppMessageDismissed(IInAppMessage inAppMessage) {
  // Executed whenever an in-app message is dismissed without a click.
}
QUÃO ÚTIL FOI ESTA PÁGINA?
New Stuff!