有没有人有幸将外部插件添加到Phonegap桌面应用程序?我已经成功添加了像“Device”这样的核心插件,但没有添加外部插件。我正在尝试将com.admob.google添加到我的项目中,我无法将admob识别为命令。 在config.xml中我添加:
<gap:plugin name="com.admob.google" source="plugins.cordova.io" />
在我的.js文件中的deviceReady函数中,我有:
try{
admob.requestInterstitialAd(); //or any other admob command
}
catch(err){
alert("admob not loaded");
}
每次在我的设备上(通过Phonegap开发者应用程序),我都会收到“admob not loaded”的警告。
我是否在混合使用Phonegap和Phonegap Build命令?
Phonegap Build Desktop App不支持自动包含外部插件吗?
答案 0 :(得分:6)
我是您尝试使用的插件的作者。您似乎正在使用命令行界面,它还没有对&lt; gap:plugin ...&gt; 进行任何自动化(而且我不确定它&# 39; s在不久的将来出现。)
正如Sanfor所说,如果你使用Phonegap CLI,你应该手动添加每个插件:
phonegap local plugin add cordova-admob
或者如果您使用Cordova:
cordova plugin add cordova-admob
如果您使用的是Phonegap Build,则应将标记放在config.xml
:
<gap:plugin name="cordova-admob" source="npm" />
在这种情况下,您还可以按照https://github.com/appfeel/admob-phonegap-build-demo.git上的说明在Phonegap Build帐户中测试演示应用。
请记住在deviceready
事件被触发后始终使用admob:
function onAdLoaded(e) {
if (e.adType === admob.AD_TYPE.INTERSTITIAL) {
admob.showInterstitialAd();
}
}
function onDeviceReady() {
document.removeEventListener('deviceready', onDeviceReady, false);
// Set AdMobAds options:
admob.setOptions({
publisherId: "YOUR_PUBLISHER_ID", // Required
interstitialAdId: "YOUR_PUBLISHER_OR_INTERSTITIAL_ID", // Optional
});
// Start showing banners inmediately:
admob.createBannerView();
// To show an interstitial, call admob.showInterstitialAd() when onAdLoaded is fired:
document.addEventListener(admob.events.onAdLoaded, onAdLoaded, false);
admob.requestInterstitial();
// You could also request and show an interstitial like this:
// admob.requestInterstitialAd({ autoShowInterstitial: true});
}
document.addEventListener('deviceready', onDeviceReady, false);
知道您是否使用CLI进行测试以便以后使用PGB,这很有趣。但是,我不确定它是否有助于模拟admob功能。请告诉我你的情况。我想到的唯一情况是,您希望在桌面浏览器中测试应用程序,但不支持插件。但即使在这种情况下,我建议您使用ripple incubator from github(或者甚至是我们,但如果您使用的是mac,那么最好使用safari开发人员工具)。
编辑2016-04-22
更新了对最新版本的旧插件引用和针对phonegap构建的npm源代码。
答案 1 :(得分:1)