Anuncios recompensados con AdMob
En este blog les dejo todos los códigos empleados en el vídeo de hoy para agregar y usar los anuncios recompensados.
Código del moreblock "extra":
// El texto subrayado es el nombre de mi componente, por si ustedes desean modificarlo
}
com.google.android.gms.ads.reward.RewardedVideoAd mRewardedVideoAd;
// Define de donde se va a cargar el anuncio recompensado. Deja el ID del anuncio como te lo proporciono en este código, y cuando vayas a publicar tu app, lo cambias por el ID de tu bloque de anuncios
private void loadRewardedVideoAd() {
mRewardedVideoAd.loadAd("ca-app-pub-3940256099942544/5224354917", new AdRequest.Builder().build());
Código del moreblock "rewardedAd":
// Inicia los MobileAds (Anuncios Mobiles). Aquí ustedes tienen que usar el App ID que les genera Admob al registrar su aplicación.
com.google.android.gms.ads.MobileAds.initialize(this, "ca-app-pub-5286670054735084~6462046626");
// Define el nombre del componente para mostrar los anuncios recompensados
mRewardedVideoAd = com.google.android.gms.ads.MobileAds.getRewardedVideoAdInstance(this);
// Ajusta el Listener para crear los eventos del componente RewardedAds
mRewardedVideoAd.setRewardedVideoAdListener(new com.google.android.gms.ads.reward.RewardedVideoAdListener(){
// Evento para detectar cuando el anuncio tenga la recompensa lista
@Override
public void onRewarded(com.google.android.gms.ads.reward.RewardItem reward) {
coins = reward.getAmount();
msg = reward.getType();
// Divide el código por si quieres agregar otro tipo de recompensa
}
// A partir de aquí, son los diferentes eventos del componente
// Evento para detectar si el usuario toco el anuncio para dejar la app
@Override
public void onRewardedVideoAdLeftApplication() {
}
// Evento para detectar que cerraste el anuncio
@Override
public void onRewardedVideoAdClosed() {
Toast.makeText(MainActivity.this, "Video cerrado", Toast.LENGTH_SHORT).show();
// Con esta última línea, vas a cargar un anuncio nuevo
loadRewardedVideoAd();
}
// Evento para detectar si el anuncio falló al cargar
@Override
public void onRewardedVideoAdFailedToLoad(int errorCode) {
Toast.makeText(MainActivity.this, "Error: " + errorCode + "Falló al cargar el anuncio, intente más tarde", Toast.LENGTH_SHORT).show();
}
// Evento para detectar si el anuncio ya se cargó
@Override
public void onRewardedVideoAdLoaded() {
//Código programático, o con bloques, el que tu decidas
}
// Evento para detectar cuando el usuario abra el anuncio
@Override
public void onRewardedVideoAdOpened() {
Toast.makeText(MainActivity.this, "Anuncio abierto", Toast.LENGTH_SHORT).show();
button1.setVisibility(View.GONE);
}
// Evento para detectar cuando el anuncio empieze a reproducirse
@Override
public void onRewardedVideoStarted() {
Toast.makeText(MainActivity.this, "El anuncio ha empezado", Toast.LENGTH_SHORT).show();
}
// Evento para detectar cuando el anuncio termine por completo
@Override
public void onRewardedVideoCompleted() {
Toast.makeText(MainActivity.this, "Se acabó el anuncio", Toast.LENGTH_SHORT).show();
}
});
// Carga un anuncio recompensado nuevo
loadRewardedVideoAd();
Código para el evento "onPause":
mRewardedVideoAd.pause(this);
Código para el evento "onResume":
mRewardedVideoAd.resume(this);
Código para el evento "onDestroy":
mRewardedVideoAd.destroy(this);
Código del botón para mostrar el anuncio:
if (mRewardedVideoAd.isLoaded()) {
mRewardedVideoAd.show();
}
else {
Toast.makeText(MainActivity.this, "El anuncio todavia no está cargado", Toast.LENGTH_SHORT).show();
}
Vídeo en Youtube: https://youtu.be/0u0k6YCn6wo
Gracias!!
ResponderEliminar