2

基本的な admob の例を使用して、cordova アプリにバナー広告を表示していますが、広告が表示されないか、表示されていても別のウィンドウによって遮られている可能性があります。

私が使用しているコード例は次のとおりです。

angular.module('starter', ['ionic', 'starter.controllers', 'starter.services'])

.run(function($ionicPlatform) {
  $ionicPlatform.ready(function() {
    // for form inputs)
    if(window.cordova && window.cordova.plugins.Keyboard) {
      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
    }
    if(window.StatusBar) {
      // org.apache.cordova.statusbar required
      StatusBar.styleDefault();
    }
   var ad_units = {
       ios : {
           banner: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653',
       },
       android : {
           banner: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653',
       }
    };
       // select the right Ad Id according to platform
    var admobid = ( /(android)/i.test(navigator.userAgent) ) ? ad_units.android : ad_units.ios;

    // Nothing happens.....                          
    if(AdMob) AdMob.createBanner( admobid.banner );

  });
})

誰かがこれを経験したことがありますか、またはこれをデバッグする方法を提案できますか?

4

1 に答える 1

2

私はhttps://github.com/appfeel/admob-google-cordovaで AdMob プラグインを使用しています。あなたのコードから、これがあなたが使用しているものだと思います。この場合、次の 2 つのオプションがあります。

1つ目:bannerpublisherIdadmobid.banner置き換えますadmobid。また、テスト目的で、アカウントが Google によってブロックされないように設定isTestingする必要があります。true

var ad_units = {
   ios : {
       publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653',
       isTesting: true
   },
   android : {
       publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653',
       isTesting: true
   }
};

// select the right Ad Id according to platform
var admobid = ( /(android)/i.test(navigator.userAgent) ) ? ad_units.android : ad_units.ios;                        
if (AdMob) {
  AdMob.createBanner(admobid);
}

2番目:.banner内部に広告設定を含むオブジェクトとして宣言する必要があります:

var ad_units = {
   ios : {
     banner: {
       publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653',
       isTesting: true
     }
   },
   android : {
     banner: {
       publisherId: 'ca-app-pub-XXXXXXXXXXXXXXXX/2259066653',
       isTesting: true
     }
   }
};

// select the right Ad Id according to platform
var admobid = ( /(android)/i.test(navigator.userAgent) ) ? ad_units.android : ad_units.ios;                       
if (AdMob) {
  AdMob.createBanner(admobid.banner);
}

また、Ionicionic.Platform.ready(function () { ... });の代わりに でテストしました$ionicPlatform。それ以外の場合、コードが縮小されている場合のエラーを防ぐために、Angular は次の方法で使用することをお勧めします (ただし、コードを縮小していない場合は影響しません)。

app.run(['$ionicPlatform', function ($ionicPlatform) {
  ...
}]);
于 2014-11-04T21:45:00.187 に答える