2015-08-25 1 views
0

У меня здесь небольшой вопрос. Как я могу показывать объявления при нажатии кнопки?Установить медийную рекламу при нажатии кнопки

Хорошо, я объясню с моим menu.class здесь

public class menu extends Activity { 

    private InterstitialAd mInterstitialAd; 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
     WindowManager.LayoutParams.FLAG_FULLSCREEN); 
     setContentView(R.layout.menu); 

     // Prepare the Interstitial Ad 
     mInterstitialAd = new InterstitialAd(menu.this); 

     // Insert the Ad Unit ID   
     mInterstitialAd.setAdUnitId("ca-app-pub-3502149848009990/xxxxxxxxx"); 

     // Create ad request. 
     AdRequest adRequest = new AdRequest.Builder().build(); 

     // Begin loading your interstitial. 
     mInterstitialAd.loadAd(adRequest); 

     // Prepare an Interstitial Ad Listener 
     mInterstitialAd.setAdListener(new AdListener() { 
      public void onAdLoaded() { 
       // Call displayInterstitial() function 
       displayInterstitial(); 
      }    
     });         

     Button play = (Button)findViewById(R.id.play);   
     play.setOnClickListener(new View.OnClickListener() { 

       @Override 
       public void onClick(View view) { 
         Intent i =new Intent(getApplicationContext(), aselectmenu.class); 
         startActivity(i); 
        }    
      }); 

     Button exit = (Button) findViewById(R.id.exit); 
     exit.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View arg0) { 
       final Dialog openDialog = new Dialog(menu.this); 
       openDialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
       openDialog.setContentView(R.layout.inflatequitapp);     

       TextView dialogTextContent = (TextView)openDialog.findViewById(R.id.exitimage); 

       Button dialogExitButton = (Button)openDialog.findViewById(R.id.buttonexityes); 
       dialogExitButton.setOnClickListener(new OnClickListener(){          
        @Override 
        public void onClick(View v) { 
         finish(); 
         } 
       }); 
       Button dialogCloseButton = (Button)openDialog.findViewById(R.id.buttonexitno); 
       dialogCloseButton.setOnClickListener(new OnClickListener(){ 
        @Override 
        public void onClick(View v) { 
         openDialog.dismiss(); 
        }                    
       });     
       openDialog.show(); 
      } 
     }); 
    } 

public void displayInterstitial() { 
    // If Ads are loaded, show Interstitial else show nothing. 
    if (mInterstitialAd.isLoaded()) { 
    mInterstitialAd.show(); 
    }   
} 
    @Override   
    public void onBackPressed() { 
     // do nothing. 
    }   

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     // Handle action bar item clicks here. The action bar will 
     // automatically handle clicks on the Home/Up button, so long 
     // as you specify a parent activity in AndroidManifest.xml. 
     int id = item.getItemId(); 
     if (id == R.id.action_settings) { 
      return true; 
     } 
     return super.onOptionsItemSelected(item); 
    } 
} 

мой вопрос в этой строке

Button exit = (Button) findViewById(R.id.exit); 
    exit.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      final Dialog openDialog = new Dialog(amenu.this); 
      openDialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
      openDialog.setContentView(R.layout.inflatequitapp);     

      TextView dialogTextContent = (TextView)openDialog.findViewById(R.id.exitimage); 

      Button dialogExitButton = (Button)openDialog.findViewById(R.id.buttonexityes); 
      dialogExitButton.setOnClickListener(new OnClickListener(){          
       @Override 
       public void onClick(View v) { 
        finish(); 
        } 
      }); 
      Button dialogCloseButton = (Button)openDialog.findViewById(R.id.buttonexitno); 
      dialogCloseButton.setOnClickListener(new OnClickListener(){ 
       @Override 
       public void onClick(View v) { 
        openDialog.dismiss(); 
       }                    
      });     
      openDialog.show(); 
     } 
    }); 
} 

Как поставить displayInterstitial() метод там так, когда кнопка нажата объявления будут отображаться?

+0

в том, где? какая кнопка? быть конкретным –

+0

@NanaGhartey, когда кнопка выхода нажата – RichFounders

ответ

1

Вызвать метод displayInterstitial() когда перед отделкой():

dialogExitButton.setOnClickListener(new OnClickListener(){          
       @Override 
       public void onClick(View v) { 
        displayInterstitial(); 
        finish(); 
        } 
      }); 

Однако, следует отметить, что в соответствии с disallowed admob implementations:

App нагрузки или выход

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

Несоблюдение этой политики может привести к отключению рекламного объявления к вашему приложению.

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

Button play = (Button)findViewById(R.id.play);   
    play.setOnClickListener(new View.OnClickListener() { 

       @Override 
       public void onClick(View view) { 
         Intent i =new Intent(getApplicationContext(), aselectmenu.class); 
         displayInterstitial(); 
         startActivity(i); 
        }    
      }); 
+0

oh okay Я поставлю дисплей на кнопку воспроизведения, это нормально, чтобы сделать его как переход от текущей деятельности к другой? спасибо за вашу помощь и информацию Nana – RichFounders