6. Reklam biçimlerini çağırma
Her reklam çağrısı bir yer tutucu (placeholder) alır. Bu, AKS portalında bir reklam biçimiyle eşleştirilen bir dize anahtarıdır (ör. "1"). AKS, çalışma zamanında yer tutucuyu birincil reklam ağına ve hata durumunda kullanılacak yedek ağ listesine eşler; kodda hiçbir zaman doğrudan reklam birimi kimliği kullanmazsınız.
Geçiş reklamı (Interstitial)
// 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)Ödüllü reklam (Rewarded)
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)Uygulama açılış reklamı (App Open)
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)Uygulama açılış reklamlarını kendiniz yönetmek yerine AKS'nin kendi açılış ekranı/uygulama açılış reklamı yönetimini (
isAppOpenAtApplicationLvluzaktan yapılandırma bayrağıyla kontrol edilir) kullanmak istiyorsanız,AppsKitSDKApplicationalt sınıfınızdaloadDefaultAppOpen/showDefaultAppOpenkullanın. Alternatif olarak, temelApplicationsınıfının zaten uçtan uca uyguladığırequestSplashAppOpenAd(callbacks, addInDefaultDelay)metodunu çağırmanız yeterlidir.
Banner reklam
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).
Yerel reklam (Native)
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)
// Show the native ad using the design you created for this placeholder in the
// AKS portal, instead of a layout resource — see below.
AdsManager.showTemplatedNative(activity, frameLayout, placeholder, isShowInScrollView = false, callback)showTemplatedNative, yerel reklamın görünümünün uygulama kodunda değil, AKS portalında tasarlanıp atandığı yer tutucular için kullanılır. Düzeni sizin sağlamanız gerekmediğinden bu metotta res parametresi yoktur. AKS, bu yer tutucu için hangi portal şablonunun geçerli olduğunu belirler, şablonu getirir (ilk getirmeden sonra önbelleğe alır) ve showNative ile aynı yükleme/gösterim akışını kullanarak yerel reklamı bu şablonla oluşturur. Yer tutucuya atanmış bir şablon yoksa veya şablon getirilemiyorsa AKS, reklamı başarısız kılmak yerine kendi yerleşik varsayılan yerel reklam tasarımını kullanır. Bu nedenle, portal tarafında henüz bir şablon ayarlanmamış olsa bile bu metodu çağırmak her zaman güvenlidir.
Özellik tanıtımı (Feature Promotion)
Özellik tanıtımı, uygulamanızdaki bir özelliği henüz kilidini açmamış kullanıcılara tanıtmak için AKS'nin sunduğu kendi reklam biçimidir. Yalnızca AKS ağı üzerinden sunulur (AdMob/MAX/vb. üzerinden değil) ve tanıtılan öğeler, AKS portalında sunucu tarafında yer tutucu bazında yapılandırılır.
// 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) { }
})