我目前正将AdMob纳入我的部分应用中,但面临一个问题。 我尝试在更改活动时显示插页式广告,因为这样会不会让用户烦恼。
我最初的理解是,显示广告会将活动置于暂停模式,并在广告关闭后恢复。
这个假设似乎是错误的,因为下面的代码,活动直接切换,吐司显示应该显示广告,但只要我不评论startActivity(意图),我从来没有看广告。
我正在onCreate中加载广告,然后尝试将其显示在另一个空格中,该空格在单击按钮时被触发(当然,如果它已在该时间点完成加载)。
源码:
@Override
public void onCreate(Bundle SafedInstanceState)
{
[...]
LoadAd();
[...]
}
public void ShowAd(){
if (interstitial.isLoaded()) {
interstitial.show();
}
}
public void LoadAd(){
String MY_AD_UNIT_ID=getResources().getString(R.string.AdID);
// Create the interstitial.
interstitial = new InterstitialAd(this);
interstitial.setAdUnitId(MY_AD_UNIT_ID);
// Create ad request.
AdRequest adRequest = new AdRequest.Builder().build();
// Begin loading your interstitial.
interstitial.loadAd(adRequest);
}
public void SWITCHACTIVITY (View view) {
ShowAd();
Intent intent = new Intent (this, ANOTHERACTIVITY.class);
startActivity(intent);
finish();
}
非常感谢我在这里做错的任何输入,或者我如何实现广告的显示以及广告关闭后广告系列的切换/关闭。
提前致谢!
答案 0 :(得分:3)
好的,所以我解决了这个问题。有点难看,但它正在做我想做的事情。 在调用ShowAd()之前,我设置了我的意图,然后在广告关闭后触发它:
public void ShowAd(){
if (interstitial.isLoaded()) {
interstitial.show();
interstitial.setAdListener(new AdListener() {
public void onAdClosed() {
if (PostAdIntent != null)
{
startActivity(PostAdIntent);
PostAdIntent = null;
finish();
};
}
});
} else
{
if (PostAdIntent != null)
{
startActivity(PostAdIntent);
PostAdIntent = null;
finish();
};
}
}