2015-04-26 6 views
1

EDIT: Игра ImageButton используется для запуска новой активности, и я хочу, чтобы она загружала межстраничное объявление, и я нажимаю на него, и он должен показывать объявление перед активностью. Пожалуйста, помогите мне отредактировать этот код. Я полностью потерял ...Промежуточные объявления от Admob не отображаются

import com.google.android.gms.ads.AdListener; 
import com.google.android.gms.ads.AdView; 
import com.google.android.gms.ads.InterstitialAd; 
import com.google.android.gms.ads.AdRequest; 

private InterstitialAd interstitial; 

@Override 
protected void onCreate(Bundle bundle) { 

    super.onCreate(bundle); 
    setContentView(R.layout.loadingscreen); 

    interstitial = new InterstitialAd(Intro.this); 
    interstitial.setAdUnitId("ca-app-pub-3940256099942544/6300978111"); 

    AdRequest adRequest = new AdRequest.Builder() 
      .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) 
      .addTestDevice("F7D422E96C746A6BB1D1DB432FEA62C6") 
      .build(); 

    interstitial.loadAd(adRequest); 

    interstitial.setAdListener(new AdListener() { 
     public void onAdLoaded() { 
      displayInterstitial(); 
     } 
    }); 

    ImageButton play = (ImageButton) findViewById(R.id.play); 
    play.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      startActivity(new Intent("com.mycompany.FattyPillow.MAINPAGE")); 
     } 
    }); 


} 

public void displayInterstitial() { 
    if (interstitial.isLoaded()) { 
     interstitial.show(); 
    } 
} 
+1

настоятельно рекомендуем вам ** НЕ ** называть 'interstitial.show()' 'от onAdLoaded()', если вы * не хотите * ссать отключите пользователей и получите доступ к учетной записи Admob. – William

+0

Я буду думать об этих вещах правильно, потому что я получаю свои объявления правильно. :) – lalilei

ответ

0
  1. Прежде всего перепроверить ваш AdUnitId, подтвердите его, он должен быть точным.

  2. .addTestDevice("aaa") здесь 'aaa' является недопустимым значением для тестового устройства. Запустите приложение с кодом Admob и просмотрите свои журналы, вы увидите addTestDevice с действительным идентификатором устройства, на котором вы запускали приложение.

  3. Ваш код выглядит хорошо. Если все же объявление не загружается, просмотрите журналы и опубликуйте их в своем вопросе.

Этот Acutally должен показать объявление, как только это ACTIVY начинается сразу?

Нет, Admob начнет загрузку объявления сразу после запуска активности, а когда он закончит загрузку объявления, тогда появится объявление.

+0

Я отредактировал код, и я обнаружил, что мои TestDeviceID и AdUnitId тестируют Id не мои. И он по-прежнему не показывает объявление в телефоне или в эмуляторе. – lalilei

0

Посмотрите на свои журналы, они точно расскажут вам, что происходит с Admob.

Если вы хотите, чтобы показать интерстициальные после пользователь нажимает на кнопку, но перед тем ваше шоу ваша новая активность, то вы будете иметь, чтобы:

  1. Зов interstitial.show() на кнопку мыши.
  2. В вашем AdListener.onAdClosed() call startActivity для новой деятельности.
0

У меня была та же проблема. Проблема заключалась в том, что активность admob не была определена в манифесте. Пожалуйста, убедитесь, что вы folllowing тег активности в вашем файле манифеста

<activity 
    android:name="com.google.android.gms.ads.AdActivity" 
    android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" 
    android:theme="@android:style/Theme.Translucent" /> 
Смежные вопросы