개발자 문서 · Android 연동
6. 광고 형식별 호출
모든 광고 호출에는 플레이스홀더가 필요합니다. 플레이스홀더는 AKS 포털에서 광고 형식에 연결해 설정하는 문자열 키입니다(예: "1"). AKS는 런타임에 플레이스홀더를 기본 광고 네트워크와 장애 시 대체할 네트워크 목록에 매핑하므로, 코드에서 광고 단위 ID를 직접 참조할 필요가 없습니다.
전면 광고
kotlin
// Load only
AdsManager.loadInterstitial(context, placeholder, object : AdsCallback() {
override fun onLoaded() { }
override fun onFailedToLoad() { }
override fun onAdShown() { }
override fun onAdDismissed() { }
override fun onAdFailedToShow() { }
})
// Show a previously loaded interstitial
AdsManager.showInterstitial(activity, placeholder, callback)
// Load and show in one call
AdsManager.loadAndShowInterstitialAd(activity, placeholder, callback)
// Check availability before showing
AdsManager.isInterstitialAvailable(placeholder)보상형 광고
kotlin
AdsManager.loadRewarded(context, placeholder, object : RewardedAdCallbacks() {
override fun onRewardedLoaded() { }
override fun onRewardedAdLoadFailure() { }
override fun onRewardedCompleted() { }
override fun onAdRewarded() { }
override fun onAdRewardedAdDismissed() { }
override fun onRewardedFailedToShow() { }
})
AdsManager.showRewarded(activity, placeholder, callbacks)
// Load and show in one call — simpler success/fail callback
AdsManager.loadAndShowRewardedAd(activity, placeholder, object : RewardedLoadAndShowCallback {
override fun onRewardedAdSuccess() { }
override fun onRewardedAdFailed() { }
})
AdsManager.isRewardedAvailable(placeholder)앱 오프닝 광고
kotlin
AdsManager.loadAppOpen(application, placeholder, object : AppOpenAdCallbacks() {
override fun onLoaded() { }
override fun onFailedToLoad() { }
override fun onDismiss() { }
override fun onAdShown() { }
override fun onAdFailToShow() { }
})
AdsManager.showAppOpen(activity, placeholder, callbacks)앱 오프닝 광고를 직접 관리하는 대신 AKS의 자체 스플래시/앱 오프닝 광고 처리 기능(
isAppOpenAtApplicationLvl원격 구성 플래그로 제어)을 사용하려면,AppsKitSDKApplication서브클래스에서loadDefaultAppOpen/showDefaultAppOpen을 사용하세요. 또는 기본Application클래스에 전체 처리 과정이 이미 구현된requestSplashAppOpenAd(callbacks, addInDefaultDelay)를 호출하기만 하면 됩니다.
배너 광고
kotlin
AdsManager.loadBanner(context, placeholder, object : BannerCallback() {
override fun onBannerLoaded() { }
override fun onBannerFailedToLoad() { }
override fun onBannerClicked() { }
override fun onBannerShown() { }
override fun onBannerSizeChanged(bannerSizes: BannerSizes) { }
override fun setBannerSize(width: Double, height: Double) { }
})
// layout is a FrameLayout (BannerContainer) you've placed in your screen
AdsManager.showBanner(activity, layout, placeholder, callback)BannerSizes: BANNER (320×50), LARGE_BANNER (320×100), MEDIUM_RECTANGLE (300×250), FULL_BANNER (468×60).
네이티브 광고
kotlin
AdsManager.loadNative(activity, placeholder, isShowInScrollView = false, object : NativeCallback() {
override fun onNativeLoaded() { }
override fun onNativeFailedToLoad() { }
override fun onNativeClicked() { }
override fun onNativeShown() { }
})
// frameLayout is the BannerContainer that will host the native ad view; res is an
// optional custom native-ad layout resource (pass null to use AKS's default layout)
AdsManager.showNative(activity, frameLayout, placeholder, isShowInScrollView = false, res = null, callback)기능 프로모션
기능 프로모션은 아직 특정 기능을 잠금 해제하지 않은 사용자에게 해당 앱 기능을 교차 홍보하는 AKS 자체 하우스 광고 형식입니다. AdMob/MAX 등의 네트워크가 아닌 AKS 네트워크를 통해서만 제공되며, 홍보할 항목은 AKS 포털에서 플레이스홀더별로 서버 측에 설정합니다.
kotlin
// Optional — exclude features the user already has unlocked from being promoted
AdsManager.setFeaturesAvailable(listOf("premium_theme", "no_ads"))
AdsManager.showFeaturePromotion(activity, placeholder, object : OnFeaturePromotionClicked {
override fun onFeaturePromotionClicked(targetScreen: String) {
// user tapped the promotion — navigate them to targetScreen
}
override fun onFailToShowFeaturePromotion(errorMessage: String) { }
})