인터스티셜 광고 형태 소개
- 화면 전체를 덮는 형태로 노출되는 광고입니다.
- 이미지/동영상 모두 포함되나 동영상 소재가 더 많이 노출되며 일반적으로 5초 후부터 스킵이 가능합니다.

광고 연동하기
1
adUnit 생성
Copy
Ask AI
val adUnit = DaroInterstitialAdUnit(
key = ${AdUnitId},
placement = ${placement}, //로그 상 보여질 이름입니다. 공백을 보내도 무관합니다.
)
2
Loader 생성 및 광고 로드
Copy
Ask AI
val loader = DaroInterstitialAdLoader(
context = context,
adUnit = adUnit
)
loader.setListener(object : DaroInterstitialAdLoaderListener {
override fun onAdLoadSuccess(ad: DaroInterstitialAd, adInfo: DaroAdInfo) {
// ...
}
override fun onAdLoadFail(err: DaroAdLoadError) {
// ...
}
})
loader.load()
3
리스너 설정 및 광고 표시
Copy
Ask AI
loader.setListener(object : DaroInterstitialAdLoaderListener {
override fun onAdLoadSuccess(ad: DaroInterstitialAd, adInfo: DaroAdInfo) {
ad.setListener(object : DaroInterstitialAdListener {
override fun onAdImpression(adInfo: DaroAdInfo) {}
override fun onAdClicked(adInfo: DaroAdInfo) {}
override fun onShown(adInfo: DaroAdInfo) {}
override fun onFailedToShow(adInfo: DaroAdInfo, error: DaroAdDisplayFailError) {}
override fun onDismiss(adInfo: DaroAdInfo) {}
})
ad.show(activity = this@MainActivity)
}
override fun onAdLoadFail(err: DaroAdLoadError) {}
})
4
광고 시청 완료 후 destroy 호출
Copy
Ask AI
ad.destroy()
Example
Copy
Ask AI
private fun showInterstitialAd() {
DaroInterstitialAdLoader(
context = context,
adUnit = DaroInterstitialAdUnit(
key = ${AdUnitId},
placement = ${placement},
),
).apply {
setListener(
object : DaroInterstitialAdLoaderListener {
override fun onAdLoadSuccess(
ad: DaroInterstitialAd,
adInfo: DaroAdInfo,
) {
Log.d("Ad Test", "interstitial - success")
ad.setListener(object : DaroInterstitialAdListener {
override fun onAdImpression(adInfo: DaroAdInfo) {
Log.d("Ad Test", "interstitial - impression")
}
override fun onAdClicked(adInfo: DaroAdInfo) {
Log.d("Ad Test", "interstitial - clicked")
}
override fun onShown(adInfo: DaroAdInfo) {
Log.d("Ad Test", "interstitial - onShown")
}
override fun onFailedToShow(
adInfo: DaroAdInfo,
error: DaroAdDisplayFailError,
) {
Log.d("Ad Test", "interstitial - onFailedToShow")
}
override fun onDismiss(adInfo: DaroAdInfo) {
Log.d("Ad Test", "interstitial - onDismiss")
ad.destroy()
}
})
ad.show(activity = this@MainActivity)
}
override fun onAdLoadFail(err: DaroAdLoadError) {
Log.d("Ad Test", "interstitial - fail : ${err.message}")
}
}
)
load()
}
}

