Tutorial: Exibindo mensagens no app condicionalmente
Siga o exemplo de código neste tutorial para exibir mensagens no app condicionalmente usando o SDK da Braze.
Pré-requisitos
Antes de poder usar esse recurso, você precisará integrar o Web Braze SDK. No entanto, nenhuma configuração adicional é necessária.
Exibindo mensagens no app condicionalmente para Web

Estamos testando este novo formato de tutorial. Diga-nos o que você acha — seus comentários nos ajudam a melhorar os guias futuros.
1. Remova chamadas para automaticallyShowInAppMessages() {#1-remove-calls-to-automaticallyshowinappmessages}
Remova qualquer chamada para automaticallyShowInAppMessages(), pois elas substituirão qualquer lógica personalizada que você implemente depois.
2. Ative a depuração (opcional) {#2-enable-debugging-optional}
Para facilitar a solução de problemas durante o desenvolvimento, considere ativar a depuração.
3. Inscreva-se para atualizações de mensagens no app {#3-subscribe-to-in-app-message-updates}
Registre um retorno de chamada com subscribeToInAppMessage(callback) para receber uma message sempre que uma mensagem no app for acionada.
4. Crie a lógica condicional {#4-create-conditional-logic}
Crie uma lógica personalizada para controlar quando as mensagens são exibidas. Neste exemplo, a lógica verifica se a URL contém "checkout" ou se um elemento #checkout existe na página.
5. Exiba mensagens com showInAppMessage {#5-display-messages-with-showinappmessage}
Para exibir a mensagem, chame showInAppMessage(message). Se omitido, a mensagem será ignorada.
Pré-requisitos
Antes de usar este recurso, você precisará integrar o SDK Android Braze. Você também precisará ativar mensagens no app para Android.
Exibindo mensagens no app condicionalmente para Android

Estamos testando este novo formato de tutorial. Diga-nos o que você acha — seus comentários nos ajudam a melhorar os guias futuros.
1. Ative a depuração (opcional) {#1-enable-debugging-optional}
Para facilitar a solução de problemas durante o desenvolvimento, considere ativar a depuração.
2. Registre retornos de chamada do ciclo de vida da atividade {#2-register-activity-lifecycle-callbacks}
Registre o listener padrão da Braze para gerenciar o ciclo de vida da mensagem no app.
3. Configure um listener de mensagem no app {#3-set-up-an-in-app-message-listener}
Use BrazeInAppMessageManager para definir um listener personalizado que intercepta mensagens antes de serem exibidas.
4. Crie a lógica condicional
Use lógica personalizada para controlar o momento de exibição da mensagem. Neste exemplo, a lógica personalizada verifica se o extra should_display_message está definido como "true".
5. Retorne ou descarte a mensagem {#5-return-or-discard-the-message}
Retorne um InAppMessageOperation com DISPLAY_NOW para exibir a mensagem, ou com DISCARD para suprimi-la.
Pré-requisitos
Antes de poder usar esse recurso, você precisará integrar o Swift Braze SDK. Você também precisará ativar mensagens no app para Swift.
Exibindo mensagens no app condicionalmente para Swift

Estamos testando este novo formato de tutorial. Diga-nos o que você acha — seus comentários nos ajudam a melhorar os guias futuros.
1. Implemente o BrazeInAppMessageUIDelegate {#1-implement-the-brazeinappmessageuidelegate}
Na sua classe AppDelegate, implemente o BrazeInAppMessageUIDelegate para que você possa sobrescrever o método inAppMessage mais tarde.
2. Ative a depuração (opcional)
Para facilitar a solução de problemas durante o desenvolvimento, considere ativar a depuração.
3. Configure a interface da Braze e o delegate {#3-set-up-your-braze-ui-and-delegate}
BrazeInAppMessageUI() renderiza mensagens no app por padrão. Ao atribuir self como delegate, você pode interceptar e manipular mensagens antes que sejam exibidas.
4. Sobrescreva DisplayChoice com lógica condicional {#4-override-displaychoice-with-conditional-logic}
Sobrescreva inAppMessage(_:displayChoiceForMessage:) para decidir se uma mensagem deve ser exibida. Retorne .now para exibir a mensagem ou .discard para suprimi-la.