我有一个应用程序,我正在使用admob横幅。现在我想在按钮点击上显示插页式广告。 我的应用有2个活动,我想在第二个活动上显示插页式广告。第二个活动有一个返回第一个活动的按钮,我想在按钮点击后显示广告。我可以在按钮点击时显示广告,但是当用户关闭广告或按下后退按钮时,它仍会保留在第二个活动上,这就是我面临的问题。
SecondActivity Code: -
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if (interstitial.isLoaded()) {
interstitial.show();
}
else{
Intent i = new Intent();
i.setClass(SecondActivity.this, FirstActivity.class);
startActivity(i);
finish();
}
}
});
}
我希望当用户点击按钮时,应该看到广告,当他关闭广告时,他应该返回第一个活动
答案 0 :(得分:10)
您所需要的是AdListener
,interstitial
利用onAdClosed()
方法确定用户关闭广告的时间,以便您将其发送回第一个活动。< / p>
您的interstitial
设置:
// Create ad request
adRequest = new AdRequest.Builder().build();
// Attempt loading ad for interstitial
interstitial.loadAd(adRequest);
// Create and set AdListener for interstitial
interstitial.setAdListener(new AdListener() {
// Listen for when user closes ad
public void onAdClosed() {
// When user closes ad end this activity (go back to first activity)
finish();
}
});
您的btn
(按钮)设置:
// Create and set OnClickListener for button
btn.setOnClickListener(new OnClickListener() {
// Listen for when user presses button
public void onClick(View v) {
// If a interstitial is ready, show it
if(interstitial.isLoaded()) {
interstitial.show();
}
// Otherwise end this activity (go back to first activity)
else {
finish();
}
}
});
这样,如果用户点击按钮,它将:
准备好广告并展示广告。等待用户关闭广告。
然后将通过onAdClosed
- 方法关闭活动。
没有准备好广告。
通过onClick
- 方法即时关闭活动。
答案 1 :(得分:0)
首先:
private InterstitialAd mInterstitialAd;
第二步:
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId(getString(R.string.interstitialAd_id));
mInterstitialAd.loadAd(new AdRequest.Builder().build());
第三步:按钮点击事件
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
else {
finish();
}
}
});