admobpro AdMob.showInterstitial()导致无限循环
我在离子/ angularjs应用程序中使用admobpro,每次我调用AdMob.showInterstitial()时都会出现一个广告,但是当我点击X关闭广告时,会立即弹出一个新广告。我最初从init函数调用showInterstitial但是想到这可能是问题,所以我创建了一个测试页面,当我点击一个按钮时会显示插页式广告,同样的 结果。无限循环。
有其他人有这个问题。
var admobid = {};
// select the right Ad Id according to platform
if( /(android)/i.test(navigator.userAgent) ) {
admobid = { // for Android
banner: 'ca-app-pub-6869992474017983/9375997553',
interstitial: 'ca-app-pub-6869992474017983/1657046752'
};
} else if(/(ipod|iphone|ipad)/i.test(navigator.userAgent)) {
admobid = { // for iOS
banner: 'ca-app-pub-6869992474017983/4806197152',
interstitial: 'ca-app-pub-6869992474017983/7563979554'
};
} else {
admobid = { // for Windows Phone
banner: 'ca-app-pub-6869992474017983/8878394753',
interstitial: 'ca-app-pub-6869992474017983/1355127956'
};
}
function adSetter(){
if(window.AdMob) AdMob.createBanner( {
isTesting:true,
adId:admobid.banner,
position:AdMob.AD_POSITION.BOTTOM_CENTER,
autoShow:true} );
if(window.AdMob) AdMob.prepareInterstitial( {adId:admobid.interstitial, autoShow:false} );
}
function onDeviceReady(){
adSetter();
}
function domLoaded(){
document.addEventListener("deviceready", onDeviceReady, false);
}
我的代码: fron ionic
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);
}
if (window.StatusBar) {
// org.apache.cordova.statusbar required
StatusBar.styleLightContent();
}
//start admob
domLoaded();
//end admob
});
})
答案 0 :(得分:0)
我发现你混合了一些代码。当cordova的设备已经发生时,会调用离子的$ ionicPlatform.ready(),因此无需再次在$ ionicPlatform.ready()
内调用设备。我在这里有一个关于离子广告的完整演示http://pointdeveloper.com/how-to-add-banner-ads-to-ionic-apps-using-admob-pro-plugin/
从代码看起来似乎没问题,它应该运行唯一的事情,你必须确保AdMob.showInterstitial()没有在循环中被调用。
如你所说,你也尝试过按钮,我建议你创建一个新项目,然后再试一次。