2016-03-09 5 views
0

Я пытаюсь загрузить AdMobInterstitialAd надстройки при
1. App открывает
2. Кнопка нажата
3. назад нажимаются
Admob интерстициального объявление не удается загрузить

Проблем
1. Когда приложение открывает свое объявление, объявление не загружается (в catlog)
2. Когда нажата обратная связь, ни одно объявление не загружается
3. Когда кнопка нажата в первый раз, DS, но после 1-го нажмите он никогда не загружает

public class MainActivity extends AppCompatActivity { 

    InterstitialAd mInterstitialAd; 
    Button mNewGameButton; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     mNewGameButton = (Button) findViewById(R.id.newgame_button); 

     mInterstitialAd = new InterstitialAd(this); 
     mInterstitialAd.setAdUnitId("ca-app-pub-5059726881726792/4446999064"); 
     if (mInterstitialAd.isLoaded()) { 
      mInterstitialAd.show(); 
     } else { 
      //Begin Game, continue with app 
     } 

     mNewGameButton.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if (mInterstitialAd.isLoaded()) { 
        mInterstitialAd.show(); 
       } else { 
        //Begin Game, continue with app 
       } 
      } 
     }); 

     mInterstitialAd.setAdListener(new AdListener() { 
      @Override 
      public void onAdClosed() { 
       //Begin Game, continue with app 
      } 
     }); 

     AdView mAdView = (AdView) findViewById(R.id.adView); 
     AdRequest adRequest = new AdRequest.Builder() 
      .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)  // All emulators 
      .addTestDevice("D016E92D0D3266640328381D0A8BB622")//bluestacks 
      .addTestDevice("CE34804F0BB3F1F2F409E6DDFB272C60").build();//s3 
     mAdView.loadAd(adRequest); 
     mInterstitialAd.loadAd(adRequest); 
    } 

    @Override 
    public void onBackPressed() { 
     super.onBackPressed(); 
     mInterstitialAd = new InterstitialAd(MainActivity.this); 
     mInterstitialAd.setAdUnitId("ca-app-pub-5059726881726792/4446999064"); 
     if (mInterstitialAd.isLoaded()) { 
      mInterstitialAd.show(); 
     } 
     AdView mAdView = (AdView) findViewById(R.id.adView); 
     AdRequest adRequest = new AdRequest.Builder() 
      .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)  // All emulators 
      .addTestDevice("D016E92D0D3266640328381D0A8BB622")//bluestacks 
      .addTestDevice("CE34804F0BB3F1F2F409E6DDFB272C60").build();//s3 
     mAdView.loadAd(adRequest); 
     mInterstitialAd.loadAd(adRequest); 
    } 
} 

ответ

2

Я использую эту рекламу в моем приложении и работает правильно.

Обратите внимание на приведенный ниже пример.

InterstitialAd mInterstitialAd; 
    Button mNewGameButton; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.google_ad_mob); 

     mInterstitialAd = new InterstitialAd(this); 
     mInterstitialAd.setAdUnitId(<your ad unit id goes here>); 
     final AdRequest.Builder adRequestBuilder = new AdRequest.Builder(); 
     adRequestBuilder.addTestDevice("your test device id goes here"); 
     mInterstitialAd.setAdListener(new AdListener() { 
      @Override 
      public void onAdLoaded() { 
       super.onAdLoaded(); 
      } 
      @Override 
      public void onAdClosed() { 
       super.onAdClosed(); 
       mInterstitialAd.loadAd(adRequestBuilder.build()); 
      } 
     }); 
     mInterstitialAd.loadAd(adRequestBuilder.build()); 

     mNewGameButton = (Button) findViewById(R.id.newgame_button); 

     newgame_button.setOnClickListener(this); 

    } 

    @Override 
    public void onClick(View v) { 
     Intent intent; 
     switch (v.getId()) { 

      case R.id.newgame_button: 
       if (mInterstitialAd.isLoaded()) { 
        mInterstitialAd.show(); 
       } 
       break; 
     } 
    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 
     if (mInterstitialAd.isLoaded()) { 
      mInterstitialAd.show(); 
     } 
    }