2017-01-05 20 views
0

я реализовал Admob интерстициального объявления согласно следующей ссылке,Admob интерстициальный запускает после страницы (активность) нагрузок

http://www.androidhive.info/2016/02/android-how-to-integrate-google-admob-in-your-app/

Проблемы для реализации этого является то, что внедренные объявления не показываются между деятельностью. По щелчку списка он перейдет к следующему действию и после 1-2 секунд показов объявлений. Это нарушает политику Admob.

Так как я могу реализовать код таким образом, чтобы объявление показывало между действиями.

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.widget.Toast; 

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

public class SecondActivity extends AppCompatActivity { 

    private String TAG = SecondActivity.class.getSimpleName(); 
    InterstitialAd mInterstitialAd; 

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

     mInterstitialAd = new InterstitialAd(this); 

     // set the ad unit ID 
     mInterstitialAd.setAdUnitId(getString(R.string.interstitial_full_screen)); 

     AdRequest adRequest = new AdRequest.Builder() 
       .build(); 

     // Load ads into Interstitial Ads 
     mInterstitialAd.loadAd(adRequest); 

     mInterstitialAd.setAdListener(new AdListener() { 
      public void onAdLoaded() { 
       showInterstitial(); 
      } 
     }); 
    } 

    private void showInterstitial() { 
     if (mInterstitialAd.isLoaded()) { 
      mInterstitialAd.show(); 
     } 
    } 

} 

ответ

0

Чтобы избежать показов объявлений в нежелательное время, вам необходимо отделить загрузку объявлений и презентацию.

Что вы делаете нагружает объявление в то время, когда вы на самом деле хотите, чтобы показать объявление

первой загрузке объявления в начале деятельности:

interstitial = new InterstitialAd(this); 
interstitial.setAdUnitId("ID"); 
AdRequest adRequest1 = new AdRequest.Builder().build(); 
interstitial.loadAd(adRequest1); 

Если вы хотите, чтобы отобразить объявления - проверить наличие свободных мест и если отобразить его нагруженный:

if (interstitial.isLoaded()) { 
    interstitial.show(); 

Таким образом, объявление будет отображаться сразу, без задержки

Я рекомендую вам поместить код загрузки в ваш firstActivity, и когда пользователь нажимает, чтобы перейти на SecondActivity, запустите код interstitial.show()

0

Поместите этот код в первой деятельности, и поставить showInterstitial(); в OnClick пункта, который запускает вторую деятельность. showInterstitial() должно быть первым, что сделано в OnClick, а затем запустить следующую операцию.

Вы можете избавиться от всего этого раздела:

mInterstitialAd.setAdListener(new AdListener() { 
     public void onAdLoaded() { 
      showInterstitial(); 
     } 
    }); 

Объявление будет загружать в этом фоне, так как вы загружаете объявление в OnCreate (как вы должны) и объявление должны быть готовы к моменту, когда пользователь нажмет на элемент, чтобы перейти к следующему действию. Если он еще не готов, он просто не отобразится.

 Смежные вопросы

  • Нет связанных вопросов^_^