我正在尝试在 Phonegap 应用程序中以编程方式加载 Admob 插页式广告。
我正在使用我在 Github 上找到的插件:
https://github.com/admob-google/admob-phonegap
我使用存储库中提供的示例 html 构建了一个测试应用程序。唯一的问题是我希望能够缓存插页式广告并以编程方式加载它。该示例使用按钮来触发 Javascript。
我确实让广告在应用程序中运行,但只能通过按下按钮。我想在 HTML 5 游戏中触发游戏结束时的插页式广告。无需用户交互。
这是我试过的:
function onLoad(){
admob.cacheInterstitial();
document.addEventListener('deviceready',onDeviceReady, false);
}
function onDeviceReady() {
showInterstitial();
}
<body onload="onLoad();">
但是,它不起作用。我承认 Javascript 不是我的强项,使用 Objective-C 和 Swift 会更轻松。
也许比我更擅长 Javascript 的人可以为我指明如何以编程方式触发这些函数 admob.cacheInterstitial();
和 showInterstitial();
的正确方向。
这是我正在使用的完整示例 HTML:
https://github.com/admob-google/admob-phonegap/blob/master/Example/index.html
最佳答案
考虑使用这个插件:https://github.com/appfeel/admob-google-cordova 使用非常简单!我实际上在我的游戏中使用它,它运行得非常好!
您只需要包含以下代码:
function onDeviceReady() {
document.removeEventListener('deviceready', onDeviceReady, false);
// Set AdMobAds options:
admob.setOptions({
publisherId: "ca-app-pub-XXXXXXXXXXXXXXXX/BBBBBBBBBB", // Required
interstitialAdId: "ca-app-pub-XXXXXXXXXXXXXXXX/IIIIIIIIII", // Optional
tappxShare: 0.5, // Optional
autoShowInterstitial: false
});
// Request interstitial (will present automatically when autoShowInterstitial is set to true, that's why we set to false! so we can call when we want!)
admob.requestInterstitialAd();
}
document.addEventListener("deviceready", onDeviceReady, false);
在您的 gameOver 函数中,您只需使用以下代码调用插页式广告
admob.showInterstitialAd();
*UPD:使用您的插件,尝试使用 bool 并显示此函数,可能像这样:
function onDeviceReady() {
if(boolGameOver){
showInterstitial();
boolGameOver = false;
}
}
在您的 gameOverFunction 中,在将 boolGameOver 设置为 true 后调用 onDeviceReady 函数!
关于javascript - 在 Phonegap 中以编程方式加载 Admob 插页式广告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36244215/