O AppboyKit (também conhecido como Objective C SDK) não é mais suportado e foi substituído pelo Swift SDK. Ele não receberá mais novos recursos, correções de bugs, atualizações de segurança ou suporte técnico - no entanto, o envio de mensagens e a análise de dados continuarão funcionando normalmente. Para saber mais, consulte Apresentando o novo Swift SDK da Braze.
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:
ABKInAppMessageClickActionType |
Comportamento ao clicar |
|---|---|
ABKInAppMessageRedirectToURI |
O URI fornecido será exibido quando a mensagem for clicada, e a mensagem será descartada. Note que o parâmetro uri não pode ser nulo. |
ABKInAppMessageNoneClickAction |
A mensagem será descartada quando for clicada. Note que o parâmetro uri será ignorado e a propriedade uri no ABKInAppMessage será definida como nula. |
Para mensagens no app contendo botões, a mensagem clickAction também será incluída na carga útil final se a ação de clique for adicionada antes de adicionar o texto do botão.
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:
Editar esta página no GitHub