2015-11-15 2 views
-2

Когда я добавляю интерстициальный в OnCreate деятельности (не основная деятельность) загрузка объявлений каждый раз, когда пользователь откроет эту деятельностьОграничение количества внедренных объявлений

Мне нужна код, который показывает интерстициальный один раз, когда открыта активность, и если этой деятельность открывается снова и снова не показывать объявления

public class MapActivity extends ActionBarActivity 
{ 
public static final String EXTRA_POI_ID = "poi_id"; 
public static final String EXTRA_POI_LATITUDE = "poi_latitude"; 
public static final String EXTRA_POI_LONGITUDE = "poi_longitude"; 


public static Intent newIntent(Context context) 
{ 
    return new Intent(context, MapActivity.class); 
} 


public static Intent newIntent(Context context, long poiId, double poiLatitude, double poiLongitude) 
{ 
    Intent intent = new Intent(context, MapActivity.class); 

    // extras 
    intent.putExtra(EXTRA_POI_ID, poiId); 
    intent.putExtra(EXTRA_POI_LATITUDE, poiLatitude); 
    intent.putExtra(EXTRA_POI_LONGITUDE, poiLongitude); 

    return intent; 
} 


@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_map); 
    setupActionBar(); 
    //Dgad.setTest(true); 
    Dgad.showRandomPopup(MapActivity.this); 

    // init analytics tracker 
    ((CityGuideApplication) getApplication()).getTracker(); 
} 


@Override 
public void onStart() 
{ 
    super.onStart(); 

    // analytics 
    GoogleAnalytics.getInstance(this).reportActivityStart(this); 
} 


@Override 
public void onResume() 
{ 
    super.onResume(); 
} 


@Override 
public void onPause() 
{ 
    super.onPause(); 
} 


@Override 
public void onStop() 
{ 
    super.onStop(); 

    // analytics 
    GoogleAnalytics.getInstance(this).reportActivityStop(this); 
} 


@Override 
public void onDestroy() 
{ 
    super.onDestroy(); 
} 


@Override 
public boolean onOptionsItemSelected(MenuItem item) 
{ 
    // action bar menu behaviour 
    switch(item.getItemId()) 
    { 
     case android.R.id.home: 
      finish(); 
      return true; 

     default: 
      return super.onOptionsItemSelected(item); 
    } 
} 


private void setupActionBar() 
{ 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    ActionBar bar = getSupportActionBar(); 
    bar.setDisplayUseLogoEnabled(false); 
    bar.setDisplayShowTitleEnabled(true); 
    bar.setDisplayShowHomeEnabled(true); 
    bar.setDisplayHomeAsUpEnabled(true); 
    bar.setHomeButtonEnabled(true); 
} 

}

+0

Просто держать флаг, возможно, в вашем классе Application –

ответ

0

Я решил, что делает это:

end_ad=new InterstitialAd(this); 
end_ad.setAdUnitId(getResources().getString(R.string.banner_ad_unit_id)); 
end_ad.loadAd(new AdRequest.Builder().build()); 

Если вы хотите CONTROLE его:

if(end_ad.isLoaded()){ 
    end_ad.show(); 
    Log.d(TAG,"SHOWING"); 
} 
else{ 
    Log.d(TAG, "NOT SHOWING"); 
} 

В противном случае, вы можете создать GlobalConstantClass

public GlobalClass{ 
public static boolean Shown = false; 
} 

Затем, когда вы покажете ADS на первый раз вы можете поместить эту boolean истину:

GlobalClass.Shown = true; 

И если вы хотите показать его, когда вы закрываете приложение в onDestroy(), вы устанавливаете переменный для false

Тогда в то время вы хотите, чтобы показать адды вы должны попросить этого boolean, например:

if(!GlobalClass.Shown){ 
//Show adds 
Dgad.showRandomPopup(MapActivity.this); 
GlobalClass.Shown=true; 
} 
else { 
//Do nothing 
} 
+0

ли он работать на ты? –

+0

Я ma new в java и не могу добавить ваш код! спасибо –

+0

@ saadat68 Как ваш код на данный момент? –

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