Admob не работает в PhoneGap и Android

Я пытаюсь добавить рекламу в мое приложение Android PhoneGap, но я не получаю... я использую PhoneGAP 0.3.3

мой ключ объявления AdMob похож на: ca-app-pub-9718633180389415/1973821888

я мой config.xml у меня есть:

<plugin name="com.admob.google" spec="4.0.8" source="pgb" />

а затем попробовал мой индекс:

function onDeviceReady() {
      document.removeEventListener('deviceready', onDeviceReady, false);

      // Set AdMobAds options:
      admob.setOptions({
        publisherId:          "ca-app-pub-9718633180389415/1973821888",  // Required
        interstitialAdId:     "ca-app-pub-9718633180389415/1973821888",  // Optional
        tappxIdiOs:           "/XXXXXXXXX/Pub-XXXX-iOS-IIII",            // Optional
        tappxIdAndroid:       "/XXXXXXXXX/Pub-XXXX-Android-AAAA",        // Optional
        tappxShare:           0.5                                        // Optional
      });

      // Start showing banners (atomatic when autoShowBanner is set to true)
      admob.createBannerView();

      // Request interstitial (will present automatically when autoShowInterstitial is set to true)
      admob.requestInterstitial();
    }

но отображается сообщение: я использую https://github.com/sunnycupertino/cordova-plugin-admob-simple

2 ответа

Решение

Не уверен, что это полезно, но я подумал, что использую тот же плагин, что и вы, когда на самом деле я использовал этот:

https://github.com/admob-google/admob-cordova

Чтобы использовать этот плагин, я написал следующий код:

var AdmobManager = {
    // admob configuration
    admobCfg: {},

    // Initialize admob support, and start showing a banner right away
    initAdmob: function () {
        // If we don't have admob support, don't try to configure anything
        if (!admob) 
            return;

        // Configure the IDs for the iOS and Android banner and interstitial ads
        AdmobManager.admobCfg.iosCfg = {
            banner: "ca-app-pub-XXXXXXXXXXXXXXXX/BBBBBBBBBB",
            interstitial: "ca-app-pub-XXXXXXXXXXXXXXXX/IIIIIIIIII"
        };
        AdmobManager.admobCfg.androidCfg = {
            banner: "ca-app-pub-XXXXXXXXXXXXXXXX/RRRRRRRRRR",
            interstitial: "ca-app-pub-XXXXXXXXXXXXXXXX/HHHHHHHHHH"
        };

        // Choose ad IDs based on platform
        AdmobManager.admobCfg.activeCfg = (/(android)/i.test(navigator.userAgent)) ? AdmobManager.admobCfg.androidCfg : AdmobManager.admobCfg.iosCfg;

        // Now we can init admob: set the IDs, and build a param for testing mode
        admob.initAdmob(AdmobManager.admobCfg.activeCfg.banner, AdmobManager.admobCfg.activeCfg.interstitial);
        AdmobManager.admobCfg.extraParams = new admob.Params();
        AdmobManager.admobCfg.extraParams.isTesting = true;

        // Request banner ads immediately upon app start
        admob.showBanner(admob.BannerSize.BANNER, admob.Position.BOTTOM_CENTER, AdmobManager.admobCfg.extraParams);
    },

    // start allowing Admob interstitials
    enableAdmobInterstitial: function () {
        // If we don't have admob support, don't try to configure anything
        if (!admob) 
            return;

        // Set up a listener for showing an interstitial once it arrives
        document.addEventListener(admob.Event.onInterstitialReceive, function (message) {
            admob.showInterstitial();
        }, false);

        // Request an interstitial to be sent
        admob.cacheInterstitial(AdmobManager.admobCfg.extraParams);
    }
}

Я звоню AdmobManager.initAdmob() прежде чем я покажу экран входа в систему, а затем, после входа в систему, я звоню AdmobManager.enableAdmobInterstitial(),

Конечно, как только вы закончите тестирование, вы захотите изменить isTesting ложно.

Автор cordova-admob плагин здесь. Вы пробовали с isTesting: true? Вы работаете в реальном устройстве? Обратите внимание, что он не будет работать в браузерах (только эмуляторы или реальные устройства).

В вашем config.xml:

<gap:plugin name="phonegap-admob" source="npm"/>

В вашем JavaScript:

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
    isTesting:            true  // Optional
  });

  // Start showing banners (atomatic when autoShowBanner is set to true)
  admob.createBannerView();

  // Request interstitial (will present automatically when autoShowInterstitial is set to true)
  admob.requestInterstitialAd();
}

document.addEventListener("deviceready", onDeviceReady, false);

Подробнее смотрите здесь: https://github.com/appfeel/admob-google-cordova/wiki/Setup

Другие вопросы по тегам