AdMobプラグインを使用するとGoogle AdMobの提供する広告配信サービスを利用してモバイルアプリに広告を表示することができます。
floatinghotpot/cordova-admob-pro
バナー広告
AdMob.createBanner({
adId: 'ca-app-pub-0123456789012345/0123456789',
position: AdMob.AD_POSITION.BOTTOM_CENTER,
//debug
// isTesting: true,
overlap: true,
autoShow: true,
adSize: 'SMART_BANNER'
});
バナー広告(AD_POSITION.POS_XY)
var elt = document.getElementById("med_page");
var rect = elt.getBoundingClientRect();
var y = (rect.bottom - rect.top) + window.pageYOffset; // タブバーを含まない画面の高さ
y *= parseFloat(document.body.style.zoom); // 元の画面サイズ(CSSピクセル、dp単位)に戻す
if (window.screen.height > 720) { // スマートバナーの高さを引く
y -= 90;
} else if (window.screen.height > 400){
y -= 50;
} else {
y -= 32;
}
y *= window.devicePixelRatio; // CSSピクセル(dp)からデバイスピクセルに変換する
AdMob.createBanner({
adId: 'ca-app-pub-0123456789012345/0123456789',
position: AdMob.AD_POSITION.POS_XY,
x: 0,
y: y,
//debug
// isTesting: true,
overlap: true,
autoShow: true,
adSize: 'SMART_BANNER'
});
インタースティシャル広告
var elem = document.getElementById("myNavigator");
elem.addEventListener("postpop", function(e) {
if (e.leavePage.id === "graph_page") { // グラフ画面からポップした後
showInterstitialPolling(10);
}
});
elem.addEventListener("postpush", function(e) {
if (e.enterPage.id === "graph_page") { // グラフ画面へプッシュした後
if (window.AdMob) {
init_ad();
}
}
});
function showInterstitialPolling(count) {
if (--count < 0) return;
if (window.AdMob) {
AdMob.isInterstitialReady(function(isready) {
if (isready) {
AdMob.showInterstitial();
} else {
setTimeout(function() {showInterstitialPolling(count)}, 200);
}
});
}
}
function init_ad() {
if (window.AdMob) {
AdMob.prepareInterstitial({
adId: 'ca-app-pub-0123456789012345/0123456789',
//debug
// isTesting: true,
autoShow: false
});
}
}
Note
adIdプロパティにはアプリIDではなく広告ユニットIDを設定します(数字の区切りに「~」ではなく「/」を使用している方です)。