Skip to content


Personalização do comportamento da mensagem no app ao clicar

A propriedade inAppMessageClickActionType no ABKInAppMessage define o comportamento da ação depois que a mensagem no app é clicada. Essa propriedade é somente leitura. Se quiser alterar o comportamento ao clicar na mensagem no app, você poderá chamar o seguinte método em ABKInAppMessage:

1
[inAppMessage setInAppMessageClickAction:clickActionType withURI:uri];
1
inAppMessage.setInAppMessageClickAction(clickActionType: clickActionType, withURI: uri)

O endereço inAppMessageClickActionType pode ser definido como um dos seguintes valores:

Personalização de cliques no corpo de mensagens no app

O seguinte método ABKInAppMessageUIDelegate é chamado quando uma mensagem no app é clicada:

1
- (BOOL) onInAppMessageClicked:(ABKInAppMessage *)inAppMessage;
1
func onInAppMessageClicked(inAppMessage: ABKInAppMessage!) -> Bool

Personalização de cliques no botão de mensagens no app

Para cliques em botões de mensagens no app e botões de mensagens HTML no app (como links), ABKInAppMessageUIDelegate inclui os seguintes métodos delegados:

1
2
3
4
5
6
- (BOOL)onInAppMessageButtonClicked:(ABKInAppMessageImmersive *)inAppMessage
                             button:(ABKInAppMessageButton *)button;

- (BOOL)onInAppMessageHTMLButtonClicked:(ABKInAppMessageHTML *)inAppMessage
                             clickedURL:(nullable NSURL *)clickedURL
                               buttonID:(NSString *)buttonID;
1
2
3
4
5
func onInAppMessageButtonClicked(inAppMessage: ABKInAppMessageImmersive!,
                                 button: ABKInAppMessageButton) -> Bool

func onInAppMessageHTMLButtonClicked(inAppMessage: ABKInAppMessageHTML!,
                                     clickedURL: URL, buttonID: String) -> Bool

Cada método retorna um valor BOOL para indicar se a Braze deve continuar a executar a ação de clique.

Para acessar o tipo de ação de clique de um botão em um método delegado, você pode usar o seguinte código:

1
2
3
4
5
6
7
if ([inAppMessage isKindOfClass:[ABKInAppMessageImmersive class]]) {
      ABKInAppMessageImmersive *immersiveIAM = (ABKInAppMessageImmersive *)inAppMessage;
      NSArray<ABKInAppMessageButton *> *buttons = immersiveIAM.buttons;
      for (ABKInAppMessageButton *button in buttons) {
         // Button action type is accessible via button.buttonClickActionType
      }
   }
1
2
3
4
5
6
if inAppMessage is ABKInAppMessageImmersive {
      let immersiveIAM = inAppMessage as! ABKInAppMessageImmersive;
      for button in inAppMessage.buttons as! [ABKInAppMessageButton]{
        // Button action type is accessible via button.buttonClickActionType
      }
    }

Quando uma mensagem no app tem botões, as únicas ações de clique que serão executadas são as do modelo ABKInAppMessageButton. O corpo da mensagem no app não será clicável, embora o modelo ABKInAppMessage tenha a ação de clique padrão atribuída.

Declarações de métodos

Para saber mais, consulte os seguintes arquivos de cabeçalho:

New Stuff!