본문으로 건너뛰기

사용자 관심 표현 시점 콜백

GfpAdLoader 를 통해 광고를 로드하면, 사용자가 광고에 관심을 보이는 시점(광고 영역의 50% 이상이 1초 동안 노출될 때)과 관심이 사라지는 시점(광고 영역이 더 이상 노출되지 않을 때)을 감지하는 콜백을 활용할 수 있습니다. 이 콜백을 사용하면, 예를 들어 사용자가 관심을 보이는 시점에 네이티브 광고Call-to-action 버튼 색상을 변경하여 광고의 주목도를 높이는 등의 처리를 할 수 있습니다.

사용 방식은 아래와 같습니다.

val adLoader = GfpAdLoader.Builder(context, adParam)
.withUserShowInterestListener { showInterest ->
if (showInterest) {
// 광고 영역 50% 로 1초 노출시 전달
// 예: CTA 배경 색상을 별도의 색상으로 변경.
} else {
// 사용자가 관심을 표현한 시점 이후에 광고 영역 0% 이하 노출시 전달
// 예: CTA 배경 색상을 기본 색상으로 변경.
}
}
.build()

사용 예시

NAM SDK 6.5.0 버전부터 네이티브 광고에 사용되는 에셋 중 하나인 callToAction 에셋에 대해, 사용자가 관심을 표현한 시점에 사용할 수 있는 배경 색상값 조회 API가 추가되었습니다.

val adLoader = GfpAdLoader.Builder(context, adParam)
.withUserShowInterestListener(showInterest -> {
if (showInterest) {
// 광고 영역 50% 로 1초 노출시 전달
nativeAd.callToActionWithOption?.let { callToActionWithOption ->
// 사용자가 관심을 표현한 시점에 사용할 수 있는 배경 색상값 조회후 적용
val highlightedBgColor = callToActionWithOption.getHighlightedBgColor(this);
if (highlightedBgColor != null) {
// 강조된 배경 색상이 있을 경우에 적용
callToActionView.setBackgroundColor(highlightedBgColor)
}
}
} else {
// 사용자가 관심을 표현한 시점 이후에 광고 영역 0% 이하 노출시 전달
// 예: CTA 배경 색상을 기본 색상으로 변경.
callToActionView.setBackgroundColor(defaultBackgroundColor)
}
})
.build();

GfpNativeAd.getCallToActionWithOption() 메서드는 nullable 한 값을 반환합니다, 반환된 LabelOptionnull 이 아닌 경우 text 값은 항상 보장되며 이 값은 GfpNativeAd.getCallToAction() 메서드의 반환값과 동일합니다. 그러나 LabelOption.getHighlightedBgColor(context) 메서드를 통해 얻을 수 있는 배경 색상값은 null 일 수 있습니다.

LabelOption.getHighlightedBgColor(context) 값이 null 이 되는 경우는 다음과 같습니다:

  • DFP, FAN, InMobi 등과 같이 callToAction 에 해당하는 문자열 정보만 전달되고 배경 색상값은 전달되지 않는 C2S 광고 제공자의 응답일 때
  • S2S 광고 응답(NDA 모듈 사용)이지만 배경 색상값이 포함되지 않은 callToAction 응답이 내려왔을 때