6. Llamadas a los formatos de anuncios
Cada llamada a un anuncio recibe un placeholder: una clave de texto asociada a un formato de anuncio en el portal de AKS (p. ej., "1"). En tiempo de ejecución, AKS vincula el placeholder con una red publicitaria principal y una lista de redes alternativas; nunca tienes que hacer referencia directa a un ID de bloque de anuncios en el código.
Intersticial
// 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)Bonificado
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)Apertura de aplicación
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)Si prefieres que AKS gestione la pantalla de inicio y los anuncios de apertura de aplicación (mediante el indicador de configuración remota
isAppOpenAtApplicationLvl) en lugar de gestionar estos anuncios por tu cuenta, usaloadDefaultAppOpen/showDefaultAppOpenen tu subclase deAppsKitSDKApplication, o simplemente llama arequestSplashAppOpenAd(callbacks, addInDefaultDelay), que la clase baseApplicationya implementa de principio a fin.
Banner
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).
Nativo
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 está pensado para placeholders cuyo diseño de anuncio nativo se ha creado y asignado en el portal de AKS, en lugar de hacerlo en el código de tu aplicación. No tiene parámetro res, porque no tienes que proporcionar el diseño. AKS determina qué plantilla del portal corresponde a este placeholder, la descarga (se almacena en caché tras la primera descarga) y la utiliza para renderizar el anuncio nativo mediante el mismo flujo de carga y visualización que usa showNative. Si el placeholder no tiene ninguna plantilla asignada o no se puede descargar, AKS utiliza su propio diseño nativo predeterminado integrado en lugar de provocar un fallo del anuncio. Por tanto, puedes llamar a este método con seguridad incluso antes de configurar una plantilla en el portal.
Promoción de funciones
La promoción de funciones (Feature Promotion) es el formato de anuncios propios de AKS para promocionar una función de tu aplicación entre los usuarios que aún no la han desbloqueado. Solo se sirve a través de la red AKS (no de AdMob/MAX/etc.), y los elementos promocionados se configuran en el servidor desde el portal de AKS, asociados al placeholder.
// 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) { }
})