Phonegap Desktop App външни добавки

Някой имал ли е късмет с добавянето на външни добавки към настолното приложение Phonegap? Имах успех с добавянето на основни добавки като „Устройство“, но не и външни. Опитвам се да добавя com.admob.google към моя проект и не мога да накарам admob да бъде разпознат като команда. В config.xml добавям:

<gap:plugin name="com.admob.google" source="plugins.cordova.io" />

И в моята функция deviceReady в моя .js файл имам:

try{
    admob.requestInterstitialAd(); //or any other admob command
}
catch(err){
    alert("admob not loaded");
}

Всеки път, когато на моето устройство (чрез приложението Phonegap Developer) получавам предупреждение, което казва, че „admob не е зареден“.

Смесвам ли команди Phonegap и Phonegap Build?

Настолното приложение Phonegap Build все още не поддържа ли автоматично включване на външни добавки?


person Dom    schedule 22.12.2014    source източник
comment
Включването на добавки чрез config.xml работи само за PGBuild.   -  person Dawson Loudon    schedule 22.12.2014


Отговори (2)


Аз съм авторът на приставката, която се опитвате да използвате. Изглежда, че използвате интерфейса на командния ред, който все още няма никаква автоматизация на ‹gap:plugin ...› (и не съм сигурен, че ще се появи в близко бъдеще).

Както казва 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.

Не забравяйте винаги да използвате admob след задействане на събитие deviceready:

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. Кажете ми, ако това е вашият случай. Единствената ситуация, която ми идва наум, е, че искате да тествате приложението в настолен браузър, където не се поддържат добавки. Но дори и в този случай бих ви предложил да използвате инкубатор на пулсации от github (или дори weinre, но ако сте на Mac, по-добре е да използвате инструменти за разработчици на safari).

РЕДАКТИРАНЕ 22.04.2016

Актуализирани стари препратки към плъгини към най-новите и npm източник за изграждане на phonegap.

person Miquel    schedule 22.12.2014
comment
Използвах настолното приложение Phonegap (phonegap.com/blog /2014/12/11/phonegap-desktop-app-beta), за което разбрах, че е GUI версията на CLI и в момента не поддържа външни добавки. В крайна сметка използвах моя изпитан и истински метод за изграждане с Phonegap Build и настройка във вашия плъгин чрез config.xml и успях да го накарам да работи. Страхотен плъгин между другото, много лесен за използване и много функции/методи. - person Dom; 23.12.2014
comment
изправени пред този проблем, можете ли да ни помогнете да го разрешим? stackoverflow.com/questions/36775178 / - person Haris; 21.04.2016
comment
съжалявам, не е свързано, затова попитах дали можете да ни помогнете, тъй като мислех, че може да можете. - person Haris; 22.04.2016
comment
@Харис о! съжалявам, разглеждах въпроса, за да видя, но използвам mac и също така от доста време не съм използвал phonegap desktop, обикновено това, което правя, е да използвам phonegap serve (в cli), докато разработвам и отстранявам грешки в браузъра. phonegap serve е добър вариант, дори когато няма пълен достъп до собствените плъгини (емулира тяхното поведение). Когато има rc, създавам приложението и го тествам в реално устройство. Това е моят опит :) - person Miquel; 22.04.2016
comment
благодаря Микел, аз също преминах към cli и това не предизвика никакъв проблем - person Haris; 22.04.2016

Не съм експерт, но това не ми се получава. Мисля, че наистина смесвате PG и PGB конфигурации (gap:plugin). Тъй като нямах късмет с получаването на тази работа (предполагам, че ще трябва да ги добавите чрез CLI), мога само да предложа какво съм направил: мокет тези добавки, които не съществуват по подразбиране. Можете например да дефинирате обект admob с необходимите налични функции.

person Roope Hakulinen    schedule 22.12.2014