Rewarded

Integración

Los anuncios recompensados (rewarded), al igual que los intersticiales, únicamente se pueden integrar a través de código. A continuación se muestra un sencillo ejemplo para entender su funcionamiento:

class MainActivity : Activity() {

    private var rewardedAd: RewardedAd? = null
    
    override fun onCreate(savedInstanceState: Bundle?) {
        ...
        rewardedAd = RewardedAd(this, "Ad Unit ID de Wortise").also {
	          it.loadAd()
        }
    }
    
    override fun onDestroy() {
        ...
        rewardedAd?.destroy()
    }
    
    fun showInterstitial() {
        if (rewardedAd?.isAvailable == true) {
            rewardedAd?.showAd(this)
        }
    }
}

Configuración del listener

Como en el resto de formatos, se puede añadir un listener para recibir los diferentes eventos que sucedan durante el ciclo de vida del anuncio recompensado. Para ello, es necesario implementar la interfaz RewardedAd.Listener como se muestra en el siguiente ejemplo:

rewardedAd.listener = object : RewardedAd.Listener() {

    override fun onRewardedClicked(ad: RewardedAd) {
        // Invocado cuando el anuncio ha sido clickeado
    }
    
    override fun onRewardedCompleted(ad: RewardedAd, reward: Reward) {
        // Invocado cuando el anuncio ha sido completado
    }
    
    override fun onRewardedDismissed(ad: RewardedAd) {
        // Invocado cuando el anuncio ha sido cerrado
    }
    
    override fun onRewardedFailedToLoad(ad: RewardedAd, error: AdError) {
        // Invocado cuando el anuncio no se ha podido cargar
        // (por error o falta de inventario)
    }
    
    override fun onRewardedFailedToShow(ad: RewardedAd, error: AdError) {
        // Invocado cuando el anuncio no se ha podido mostrar
    }
    
    override fun onRewardedImpression(ad: RewardedAd) {
        // Invocado cuando el anuncio ha generado una impresión
    }

    override fun onRewardedLoaded(ad: RewardedAd) {
        // Invocado cuando el anuncio ha sido cargado
    }
    
    override fun onRewardedRevenuePaid(ad: RewardedAd,
                                       data: Revenuedata) {
        // Invocado cuando el anuncio ha generado un ingreso
    }
    
    override fun onRewardedShown(ad: RewardedAd) {
        // Invocado cuando el anuncio ha sido mostrado
    }
}

Última actualización