Хотите показывать промежуточную рекламу на каждой нажатой кнопке, но показ рекламы на одной кнопке - PullRequest
1 голос
/ 24 января 2020

Это мой код для main_activity. Я хочу, чтобы реклама появлялась на каждой кнопке, видимой на экране, и при нажатии должна отображаться промежуточная реклама. Но он показывает только рекламу на btn_button. Пожалуйста, объясните мне, как решить эту проблему.

public class MainActivity extends AppCompatActivity {
    private InterstitialAd mInterstitialAd;

    private InterstitialAd mInterstitialAd2;

    Button btn_button,btn_button2,btn_button3,btn_button4,btn_button5;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus initializationStatus) {
            }});

        btn_button=(Button) findViewById(R.id.button);
        btn_button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i3=new Intent(MainActivity.this,Button.class);
                startActivity(i3);

            }
        });

        btn_button2=(Button) findViewById(R.id.button);
        btn_button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i2=new Intent(MainActivity.this,Button.class);
                startActivity(i2);

            }
        });
        btn_button3=(Button) findViewById(R.id.button);
        btn_button3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i=new Intent(MainActivity.this,Button.class);
                startActivity(i);

            }
        });
        btn_button4=(Button) findViewById(R.id.button);
        btn_button4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i4=new Intent(MainActivity.this,Button.class);
                startActivity(i4);

            }
        });
        btn_button5=(Button) findViewById(R.id.button);
        btn_button5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i5=new Intent(MainActivity.this,Button.class);
                startActivity(i5);

            }
        });

        mInterstitialAd = new InterstitialAd(this);
        mInterstitialAd.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
        mInterstitialAd.loadAd(new AdRequest.Builder().build());

        btn_button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mInterstitialAd.isLoaded()) {
                    mInterstitialAd.show();
                } else {
                    Log.d("TAG", "The interstitial wasn't loaded yet.");
                }
            }
        });
        mInterstitialAd2 = new InterstitialAd(this);
        mInterstitialAd2.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
        mInterstitialAd2.loadAd(new AdRequest.Builder().build());
        btn_button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mInterstitialAd2.isLoaded()) {
                    mInterstitialAd2.show();
                } else {
                    Log.d("TAG", "The interstitial wasn't loaded yet.");
                }
            }
        });
        btn_button3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mInterstitialAd.isLoaded()) {
                    mInterstitialAd.show();
                } else {
                    Log.d("TAG", "The interstitial wasn't loaded yet.");
                }
            }
        });
        btn_button4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mInterstitialAd.isLoaded()) {
                    mInterstitialAd.show();
                } else {
                    Log.d("TAG", "The interstitial wasn't loaded yet.");
                }
            }
        });
        btn_button5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mInterstitialAd.isLoaded()) {
                    mInterstitialAd.show();
                } else {
                    Log.d("TAG", "The interstitial wasn't loaded yet.");
                }
            }
        });
    }
}

Ответы [ 2 ]

1 голос
/ 27 января 2020

У вас такой же идентификатор кнопки, поэтому он показывает только одну кнопку, как упомянуто @Anon.

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

НО ... ваша учетная запись AdMob будет отключена очень скоро, если вы попытаетесь показывать рекламу при каждом нажатии.

0 голосов
/ 24 января 2020

Каждая используемая кнопка ссылается на один и тот же идентификатор кнопки, поэтому у вас работает только одна кнопка. =)

'btn_button5 = (кнопка) findViewById (R.id.button); btn_button4 = (кнопка) findViewById (R.id.button); '

...