응답 정보
NAM SDK 는 광고 로드 성공 또는 실패 시 디버깅 및 로깅 목적으로 활용할 수 있는 GfpResponseInfo 객체를 제공합니다.
이 객체는 광고 로드 관련 정보를 포함하며, GfpAd 를 상속받는 GfpBannerAd, GfpNativeAd, GfpRewardedAd, GfpInterstitialAd 의 객체의 getResponseInfo() 메서드를 호출하여 획득할 수 있습니다.
응답 정보 확인 예제
GfpBannerAdView 사용시
GfpBannerAdView 를 통한 배너 광고 연동시에는 아래 예시와 같이 광고 응답 정보를 확인할 수 있습니다.
- Kotlin
- Java
val bannerAdView = GfpBannerAdView(this, adParam)
bannerAdView.setAdListener(object: BannerAdListener() {
override fun onAdLoaded(ad: GfpBannerAd) {
val responseInfo = ad.responseInfo
Log.d("response info", responseInfo.toString())
}
override fun onError(ad: GfpBannerAd, error: GfpError) {
val responseInfo = ad.responseInfo
Log.d("response info", responseInfo.toString())
}
})
GfpBannerAdView bannerAdView = new GfpBannerAdView(this, adParam);
bannerAdView.setAdListener(new BannerAdListener() {
@Override
public void onAdLoaded(GfpBannerAd ad) {
GfpResponseInfo responseInfo = ad.getResponseInfo();
Log.d("response info", responseInfo.toString());
}
@Override
public void onError(GfpBannerAd ad, GfpError error) {
GfpResponseInfo responseInfo = ad.getResponseInfo();
Log.d("response info", responseInfo.toString());
}
}
GfpRewardedAdManager 사용시
GfpRewardedAdManager 를 통한 보상형 광고 연동시에는 아래 예시와 같이 광고 응답 정보를 확인할 수 있습니다.
- Kotlin
- Java
val rewardedAdManager = GfpRewardedAdManager(this, adParam)
rewardedAdManager.setAdListener(object: RewardedAdListener() {
override fun onAdLoaded(ad: GfpRewardedAd) {
val responseInfo = ad.responseInfo
Log.d("response info", responseInfo.toString())
}
override fun onError(ad: GfpRewardedAd, error: GfpError) {
val responseInfo = ad.responseInfo
Log.d("response info", responseInfo.toString())
}
})
GfpRewardedAdManager rewardedAdManager = new GfpRewardedAdManager(this, adParam);
rewardedAdManager.setAdListener(new RewardedAdListener() {
@Override
public void onAdLoaded(GfpRewardedAd ad) {
GfpResponseInfo responseInfo = ad.getResponseInfo();
Log.d("response info", responseInfo.toString());
}
@Override
public void onError(GfpRewardedAd ad, GfpError error) {
GfpResponseInfo responseInfo = ad.getResponseInfo();
Log.d("response info", responseInfo.toString());
}
}
GfpInterstitialAdManager 사용시
GfpInterstitialAdManager 를 통한 전면형 광고 연동시에는 아래 예시와 같이 광고 응답 정보를 확인할 수 있습니다.
- Kotlin
- Java
val interstitialAdManager = GfpInterstitialAdManager(this, adParam)
interstitialAdManager.setAdListener(object: InterstitialAdListener() {
override fun onAdLoaded(ad: GfpInterstitialAd) {
val responseInfo = ad.responseInfo
Log.d("response info", responseInfo.toString())
}
override fun onError(ad: GfpInterstitialAd, error: GfpError) {
val responseInfo = ad.responseInfo
Log.d("response info", responseInfo.toString())
}
})
GfpInterstitialAdManager interstitialAdManager = new GfpInterstitialAdManager(this, adParam);
interstitialAdManager.setAdListener(new InterstitialAdListener() {
@Override
public void onAdLoaded(GfpInterstitialAd ad) {
GfpResponseInfo responseInfo = ad.getResponseInfo();
Log.d("response info", responseInfo.toString());
}
@Override
public void onError(GfpInterstitialAd ad, GfpError error) {
GfpResponseInfo responseInfo = ad.getResponseInfo();
Log.d("response info", responseInfo.toString());
}
}
GfpAdLoader 사용시
배너와 네이티브 그리고 네이티브 심플 광고의 로드를 지원하는 GfpAdLoader 를 사용하는 경우에는 아래 예시와 같이 광고 응답 정보를 확인할 수 있습니다.
로드 실패 또는 렌더링 과정에서의 오류가 발생할 경우의 응답 정보는 AdEventListener.onError() 콜백을 통해 전달되는 두번째 인자로 확인할 수 있습니다.
- Kotlin
- Java
val builder = GfpAdLoader.Builder(this, adParam)
.withAdListener(object: AdEventListener() {
override fun onError(error: GfpError, responseInfo: GfpResponseInfo) {
Log.d("response info", responseInfo.toString());
}
})
.withBannerAd(getBannerAdOptions()) { bannerAd ->
GfpResponseInfo responseInfo = bannerAd.getResponseInfo();
Log.d("banner ad response info", responseInfo.toString());
}
.withNativeAd(getNativeAdOptions(false)) { nativeAd ->
GfpResponseInfo responseInfo = nativeAd.getResponseInfo();
Log.d("native ad response info", responseInfo.toString());
}
.withNativeSimpleAd(getNativeSimpleAdOptions()) { nativeSimpleAd ->
GfpResponseInfo responseInfo = nativeSimpleAd.getResponseInfo();
Log.d("native simple ad response info", responseInfo.toString());
}
.build()
GfpAdLoader.Builder builder = new GfpAdLoader.Builder(this, adParam)
.withAdListener(new AdEventListener() {
// ...
@Override
public void onError(GfpError error, GfpResponseInfo responseInfo) {
Log.d("on error response info", nativeSimpleAd.getResponseInfo();
}
})
.withBannerAd(getBannerAdOptions(), bannerAd -> {
// ...
Log.d("banner ad response info", nativeSimpleAd.getResponseInfo();
})
.withNativeAd(getNativeAdOptions(false), nativeAd -> {
// ...
Log.d("native ad response info", nativeSimpleAd.getResponseInfo();
})
.withNativeSimpleAd(getNativeSimpleAdOptions(), nativeSimpleAd -> {
// ...
Log.d("native simple ad response info", nativeSimpleAd.getResponseInfo();
}).build();
응답 정보
GfpResponseInfo 객체의 메서드에는 다음이 포함됩니다.
메서드 | 설명 |
---|---|
getRequestId() | Request ID 는 광고 요청에 대한 고유 식별자이며, 특정 광고 요청에 문제가 발생했을 때 원인을 파악하는 데 유용한 키 값이 될 수 있습니다. |
getAdCallLatency() | 광고 요청 과정에서 광고 서버에 요청을 보내고 응답을 받는 데 걸린 시간(밀리초)입니다. 광고를 요청하지 않은 경우에는 0이 반환됩니다. |
getTotalLoadLatency() | 광고 요청 과정에서 광고 서버에 요청을 보내고 성공적으로 광고를 로드하는 데 걸린 시간(밀리초)입니다. 광고를 요청하지 않았거나 광고가 로드되지 않고 오류만 발생한 경우에는 0이 반환됩니다. |
getAdapterLoadLatency() | 광고를 로드한 미디에이션 어댑터 내에서 광고를 요청하고 로드하는데 걸린 시간(밀리초)입니다. 광고를 요청하지 않았거나 광고를 로드하는데 성공한 미디에이션 어댑터가 없을 경우, 0이 반환됩니다. |
getLoadedAdapterName() | 광고를 로드한 미디에이션 어댑터의 클래스 이름을 반환합니다. 광고를 요청하지 않았거나 광고를 로드하는데 성공한 미디에이션 어댑터가 없을 경우, null이 반환됩니다. |
getAdapterResponses() | 광고 응답에 포함된 각 미디에이션 어댑터의 메타데이터를 포함하는 GfpAdapterResponseInfo 목록을 반환합니다. Waterfall 미디에이션 과정을 디버깅하는데 사용될 수 있으며 목록의 순서는 이 광고 요청의 미디에이션 호출 순서와 일치합니다. |
어댑터 응답 정보
GfpAdapterResponseInfo 는 미디에이션 과정중에 처리되는 개별 미디에이션 어댑터에 대한 응답 정보를 포함하고 이 객체의 메서드에는 다음이 포함됩니다.
메서드 | 설명 |
---|---|
getAdapterName() | 광고 네트워크를 식별하는 클래스 이름입니다. |
getLoadLatency() | 어댑터 내부에서 광고를 요청하고 로드하는데 걸린 시간(밀리초)입니다. 어댑터 내부에서 광고를 요청 하지 않았거나 광고 요청이 실패했을 경우 0이 반환됩니다. |
getLoadErrorLatency() | 어댑터 내부에서 광고를 요청하고 에러가 발생하는 시점까지 걸린 시간(밀리초)입니다. 어댑터 내부에서 광고를 요청하지 않았거나 광고 요청이 성공했을 경우 0값이 반환됩니다. |
getError() | 어댑터 내부에서 발생한 오류입니다. GfpError 객체로 에러 정보를 반환하며 해당 객체에서 오류와 관련된 정보를 확인할 수 있습니다. 광고 요청이 성공했을 경우에는 null이 반환됩니다. |