2014-11-04 2 views
2

Я использую основной пример admob для показа баннерной рекламы на моем приложении cordova, но ни объявления не появляются, либо они могут появляться, но закрыты другим окном.Google Admob не отображает объявления с использованием примера кордоны таблеток?

Вот пример кода, я использую:

angular.module('starter', ['ionic', 'starter.controllers', 'starter.services']) 

.run(function($ionicPlatform) { 
    $ionicPlatform.ready(function() { 
    // for form inputs) 
    if(window.cordova && window.cordova.plugins.Keyboard) { 
     cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
    } 
    if(window.StatusBar) { 
     // org.apache.cordova.statusbar required 
     StatusBar.styleDefault(); 
    } 
    var ad_units = { 
     ios : { 
      banner: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653', 
     }, 
     android : { 
      banner: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653', 
     } 
    }; 
     // select the right Ad Id according to platform 
    var admobid = (/(android)/i.test(navigator.userAgent)) ? ad_units.android : ad_units.ios; 

    // Nothing happens.....       
    if(AdMob) AdMob.createBanner(admobid.banner); 

    }); 
}) 

Кто-нибудь имел опыт с этим или может предложить некоторые способы отладки это?

ответ

3

Я использую плагин AdMob в https://github.com/appfeel/admob-google-cordova, и я полагаю, что из вашего кода это тот, который вы используете. Если это так у вас есть два варианта:

1-й: заменить banner на publisherId и admobid.banner по admobid. Кроме того, для целей тестирования, вы должны установить isTesting в true для того, чтобы предотвратить вашу учетную запись блокируется Google:

var ad_units = { 
    ios : { 
     publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653', 
     isTesting: true 
    }, 
    android : { 
     publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653', 
     isTesting: true 
    } 
}; 

// select the right Ad Id according to platform 
var admobid = (/(android)/i.test(navigator.userAgent)) ? ad_units.android : ad_units.ios;       
if (AdMob) { 
    AdMob.createBanner(admobid); 
} 

второй: Вы должны объявить .banner как объект с конфигурацией объявлений внутри:

var ad_units = { 
    ios : { 
    banner: { 
     publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653', 
     isTesting: true 
    } 
    }, 
    android : { 
    banner: { 
     publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653', 
     isTesting: true 
    } 
    } 
}; 

// select the right Ad Id according to platform 
var admobid = (/(android)/i.test(navigator.userAgent)) ? ad_units.android : ad_units.ios;      
if (AdMob) { 
    AdMob.createBanner(admobid.banner); 
} 

Также с Ionic я тестировал его с ionic.Platform.ready(function() { ... }); вместо $ionicPlatform. В противном случае, чтобы предотвратить ошибки, если код был уменьшен, Angular рекомендует использовать его таким образом (но он не должен влиять, если вы не уменьшаете код):

app.run(['$ionicPlatform', function ($ionicPlatform) { 
    ... 
}]); 
+0

Привет, У меня такая же проблема как ОП. Не могли бы вы предоставить простую скрипту о настройках запуска/конфигурации в приложении Ionic и о том, как создавать/показывать баннер в состояниях/страницах? – JuniorDev

+1

@ IsmailKuruca есть [отличный учебник здесь] (https://github.com/appfeel/admob-google-cordova/wiki/Angular.js,-Ionic-apps) – David

Смежные вопросы