游戏开始前的Admob插页式节目

时间:2015-05-14 07:56:50

标签: android interstitial

我想在游戏开始前在游戏中添加插页式广告。

当您运行应用程序时,您有3种不同的游戏模式,因此当您选择一种模式时,游戏将以该模式启动。我们的想法是在游戏开始之前按下按钮后显示插页式广告。

我已经按照Android开发者页面here上的指南进行了操作,但这并不完全符合我的需要。我修改了一下以适应我的代码,但在开始游戏之前没有显示插页式广告,它会在您完成游戏并返回mainActivity时显示。

这是我的代码:

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

    btn1Player = (ImageButton) findViewById(R.id.OnePlayerImgBtn);
    btnVersus = (ImageButton) findViewById(R.id.VersusImgBtn);
    btnLocalMultiP = (ImageButton) findViewById(R.id.LCLMultiPlayerImgBtn);

    mInterstitialAd = new InterstitialAd(this);
    mInterstitialAd.setAdUnitId(getString(R.string.ad_intersticial_1_id));
    requestNewInterstitial();


    btn1Player.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            displayInterstitial();
            startGame(false,true,MODE_SINGLE);
        }
    });
    btnVersus.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            displayInterstitial();
            startGame(false,true,MODE_VERSUS);
        }
    });
    btnLocalMultiP.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            displayInterstitial();
            startGame(true,true,MODE_LOCALMULTI);
        }
    });

    mInterstitialAd.setAdListener(new AdListener() {
        @Override
        public void onAdClosed() {
            requestNewInterstitial();
        }
    });
}



private void requestNewInterstitial() {
    AdRequest adRequest = new AdRequest.Builder().build();
    mInterstitialAd.loadAd(adRequest);
}


public void displayInterstitial() {
    if (mInterstitialAd.isLoaded()) {
        mInterstitialAd.show();
    }
}

1 个答案:

答案 0 :(得分:1)

String singlemode ="Off";
String versus ="Off";
String multi ="Off";

btn1Player.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        displayInterstitial();
        String singlemode ="On";
    }
});
btnVersus.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        displayInterstitial();
         String versus ="On";
    }
});
btnLocalMultiP.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        displayInterstitial();
        String multi="On";
    }
});

mInterstitialAd.setAdListener(new AdListener() {
    @Override
    public void onAdClosed() {

if singlemode.equals("On");
{startGame(false,true,MODE_SINGLE);}

if versus.equals("On");
{startGame(false,true,MODE_VERSUS);}

if multimode.equals("On");
{startGame(true,true,MODE_LOCALMULTI);}
        requestNewInterstitial();
    }
});