cordova-plugin-admob-free: Uncaught (в обещании) Interstitial еще не готов
Я пытаюсь внедрить промежуточную рекламу в мою HTML5-игру, используя cordova-plugin-admob-free.
Я использую это следующим образом:
var ADMOB_AndroidID = (my Admob ID here);
var ADMOB_iOSID = "";
var ADMOB_WindowsID = "";
document.addEventListener( 'deviceready', initAdmob );
function initAdmob() {
var admobid = {};
if ( /(android)/i.test(navigator.userAgent) ) { // for android & amazon-fireos
admobid = {
banner: ADMOB_AndroidID,
interstitial: ADMOB_AndroidID
};
} else if ( /(ipod|iphone|ipad)/i.test(navigator.userAgent) ) { // for ios
admobid = {
banner: ADMOB_iOSID,
interstitial: ADMOB_iOSID
};
} else { // for windows phone
admobid = {
banner: ADMOB_WindowsID,
interstitial: ADMOB_WindowsID
};
}
admob.interstitial.config({
id: admobid.interstitial,
isTesting: true,
autoShow: false
})
admob.interstitial.prepare();
document.addEventListener('admob.interstitial.events.CLOSE', function(event) {
admob.interstitial.prepare();
} );
}
Затем, после окончания игры, я звоню
admob.interstitial.show();
Когда я запускаю его на эмуляторе Android (или на реальном устройстве), ничего не происходит, когда игра заканчивается и отладчик Chrome показывает:
Uncaught (in promise) Interstital not ready yet
Так что я делаю не так?
РЕДАКТИРОВАТЬ: Добавлен скриншот Chrome Console
Моя консоль показывает это (после того, как я добавил EventListener в LOAD_FAIL для внедрения):
1 ответ
Был и этот.
Понял, что я никогда не звонил
admob.interstitial.prepare();
После добавления все работает.
Это только начало работать без меня, меняющего что-либо. По-видимому, для того, чтобы рекламный блок стал активным после его создания, требуется (достаточно) некоторое время. Таким образом, приведенный выше код работает.
Просто дополнительный совет: я сначала допустил ошибку, используя свой идентификатор приложения вместо идентификатора рекламного блока. Если ваш идентификатор имеет тильду (~) вместо косой черты (/), то вы используете свой идентификатор приложения. Войдите в свою учетную запись AdMob, создайте рекламный блок и используйте вместо этого его идентификатор.