
앱보이키트 (Objective-C 소프트웨어 개발 키트라고도 함)는 더 이상 지원되지 않으며 Swift SDK. 새로운 기능, 버그 수정, 보안 업데이트 또는 기술 지원은 더 이상 제공되지 않지만 메시징 및 분석은 정상적으로 계속 작동합니다. 자세한 내용은 새로운 Braze Swift 소프트웨어 개발 키트 소개 를 참조하세요.
클릭 시 인앱 메시지 동작 사용자 지정
ABKInAppMessage의 inAppMessageClickActionType 속성정보는 인앱 메시지를 클릭한 후의 동작을 정의합니다. 이 속성은 읽기 전용입니다. 인앱 메시지의 클릭 동작을 변경하려면 ABKInAppMessage에서 다음 메서드를 호출할 수 있습니다.
1
[inAppMessage setInAppMessageClickAction:clickActionType withURI:uri];
1
inAppMessage.setInAppMessageClickAction(clickActionType: clickActionType, withURI: uri)
inAppMessageClickActionType은 다음 값 중 하나로 설정할 수 있습니다.
ABKInAppMessageClickActionType |
클릭 시 동작 |
|---|---|
ABKInAppMessageRedirectToURI |
메시지를 클릭하면 지정된 URI가 표시되고 메시지가 해제됩니다. uri 매개변수는 nil일 수 없습니다. |
ABKInAppMessageNoneClickAction |
클릭하면 메시지가 해제됩니다. uri 매개변수는 무시되고 ABKInAppMessage의 uri 속성정보는 nil로 설정됩니다. |

버튼이 포함된 인앱 메시지의 경우, 버튼 텍스트를 추가하기 전에 클릭 동작이 추가되면 clickAction 메시지도 최종 페이로드에 포함됩니다.
인앱 메시지 본문 클릭 사용자 지정
다음 ABKInAppMessageUIDelegate 델리게이트 메서드는 인앱 메시지를 클릭할 때 호출됩니다.
1
- (BOOL) onInAppMessageClicked:(ABKInAppMessage *)inAppMessage;
1
func onInAppMessageClicked(inAppMessage: ABKInAppMessage!) -> Bool
인앱 메시지 버튼 클릭 사용자 지정
인앱 메시지 버튼 및 HTML 인앱 메시지 버튼(예: 링크) 클릭의 경우, ABKInAppMessageUIDelegate에는 다음과 같은 델리게이트 메서드가 포함됩니다.
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
각 메서드는 Braze에서 클릭 동작을 계속 실행할지 여부를 나타내는 BOOL 값을 반환합니다.
델리게이트 메서드에서 버튼의 클릭 동작 유형에 액세스하려면 다음 코드를 사용할 수 있습니다.
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
}
}
인앱 메시지에 버튼이 있는 경우, 실행되는 클릭 동작은 ABKInAppMessageButton 모델에 있는 것만 해당됩니다. ABKInAppMessage 모델에 기본 클릭 동작이 할당되어 있어도 인앱 메시지 본문은 클릭할 수 없습니다.
메서드 선언
추가 정보는 다음 헤더 파일을 참조하세요.