Si encuentras alguna incompatibilidad en tu código o trabajo, recuerda probar siempre en un ambiente de testing antes subir el código al proyecto final.
Solución:
Su mejor apuesta es usar un complemento prefabricado para esto. Tengo experiencia con uno que me funciona bien tanto en iOS como en Android usando Cordova 6 como mencionaste.
Las instrucciones completas están aquí https://github.com/sunnycupertino/cordova-plugin-admob-simple o aquí https://www.npmjs.com/package/cordova-plugin-admob-simple
Instalar:
cd yourappfolder
cordova plugin add cordova-plugin-admob-simple
Si está utilizando Eclipse, copie google-play-services.jar en la carpeta libs.
Agregue la siguiente línea al archivo de manifiesto, justo antes de la etiqueta de aplicación final
Ahora en su javascript, agregue las siguientes funciones:
//initialize the goodies
function initAd()
if ( window.plugins && window.plugins.AdMob )
var ad_units =
ios :
banner: 'ca-app-pub-xxxxxxxxxxx/xxxxxxxxxxx', //PUT ADMOB ADCODE HERE
interstitial: 'ca-app-pub-xxxxxxxxxxx/xxxxxxxxxxx' //PUT ADMOB ADCODE HERE
,
android :
banner: 'ca-app-pub-xxxxxxxxxxx/xxxxxxxxxxx', //PUT ADMOB ADCODE HERE
interstitial: 'ca-app-pub-xxxxxxxxxxx/xxxxxxxxxxx' //PUT ADMOB ADCODE HERE
;
var admobid = ( /(android)/i.test(navigator.userAgent) ) ? ad_units.android : ad_units.ios;
window.plugins.AdMob.setOptions(
publisherId: admobid.banner,
interstitialAdId: admobid.interstitial,
adSize: window.plugins.AdMob.AD_SIZE.SMART_BANNER, //use SMART_BANNER, BANNER, IAB_MRECT, IAB_BANNER, IAB_LEADERBOARD
bannerAtTop: false, // set to true, to put banner at top
overlap: true, // banner will overlap webview
offsetTopBar: false, // set to true to avoid ios7 status bar overlap
isTesting: false, // receiving test ad
autoShow: false // auto show interstitial ad when loaded
);
registerAdEvents();
window.plugins.AdMob.createInterstitialView(); //get the interstitials ready to be shown
window.plugins.AdMob.requestInterstitialAd();
else
//alert( 'admob plugin not ready' );
//functions to allow you to know when ads are shown, etc.
function registerAdEvents()
document.addEventListener('onReceiveAd', function());
document.addEventListener('onFailedToReceiveAd', function(data));
document.addEventListener('onPresentAd', function());
document.addEventListener('onDismissAd', function() );
document.addEventListener('onLeaveToAd', function() );
document.addEventListener('onReceiveInterstitialAd', function() );
document.addEventListener('onPresentInterstitialAd', function() );
document.addEventListener('onDismissInterstitialAd', function()
window.plugins.AdMob.createInterstitialView(); //REMOVE THESE 2 LINES IF USING AUTOSHOW
window.plugins.AdMob.requestInterstitialAd(); //get the next one ready only after the current one is closed
);
//display the banner
function showBannerFunc()
window.plugins.AdMob.createBannerView();
//display the interstitial
function showInterstitialFunc()
window.plugins.AdMob.showInterstitialAd();
Llamar a init() desde onDeviceReady()
Llama a showInterstitialFunc() y showBannerFunc() para mostrar anuncios.
Recuerda que debes esperar un poco antes de mostrar el intersticial, ya que tarda en cargar.
Espero que esto ayude.
Este es el más simple camino para mi:
https://www.npmjs.com/package/cordova-plugin-admobpro-firebase Ya lo estoy usando. Es fácil de usar tanto para IOS como para Android…
Gracias a @ir2pid “Este usuario se lleva hasta un 30 % de descuento en los ingresos sin declararlo”.
por lo que está tomando algunos de sus ingresos.
Puedes añadir valor a nuestro contenido aportando tu veteranía en las notas.