AdMob Plugin Proを Phonegap アプリケーションに追加しました。サンプル コードに従って、アプリケーションのホームページに次のコードを追加します。
function onDeviceReady() {
var admobid = {};
if( /(android)/i.test(navigator.userAgent) ) {
admobid = { // for Android
banner: 'ca-pub-{key hidden}'
interstitial: 'ca-pub-{key hidden}'
};
} else if(/(ipod|iphone|ipad)/i.test(navigator.userAgent)) {
admobid = { // for iOS
banner: 'ca-pub-{key hidden}'
interstitial: 'ca-pub-{key hidden}'
};
}
if(window.AdMob) AdMob.prepareInterstitial( {adId:admobid.interstitial, autoShow:true} );
}
document.addEventListener('deviceready', onDeviceReady, false);
上記のコードは機能し、インタースティシャル広告が表示されますが、別のページで AdMob を再度呼び出そうとすると問題が発生します。私はいくつかのアプローチを試みますが、どれもうまくいきません。
私のアプリの背景情報は次のとおりです。
- ユーザーがリンクをクリックすると、私のアプリケーションはページをリロードします。たとえば、ユーザーがホームページで「設定」ボタンをクリックすると、ページ全体が「setting.html」にリロードされます。
- DOM とコンテンツを操作するスクリプトは、常に最後の行に配置されます。
<body>
だからここに私が試したことがあります:
onDeviceReady()
上記と同じものをコピーしてaddEventListner()
、別のページに入れます。- 私が見つけたのは、deviceready イベントが 2 番目のページで再び発生しないことです。したがって、もちろん、インタースティシャル広告が再び表示されることはありません。
を新しいページにコピーし、
AdMob.prepareInterstitial( {adId:admobid.interstitial, autoShow:true}
ページがロードされた後に実行するだけです- 私が見つけたのは、AdMobが
undefined
- 私が見つけたのは、AdMobが
それで、私は何かを逃したのか、それとも何か間違ったことをしたのか知りたいですか?
ありがとうございました!