我正在尝试插入一个插页式广告,我希望它先加载,然后在应用程序中加载它,同时还要执行动作,这会导致延迟,并使广告在之后效果很好。我想在按下“ adicionar”后立即显示广告,如下图所示: enter image description here
以下代码显示了其实现方式:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-8920922366585510/4181958830");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
if (requestCode == ADD_PACK) {
if (resultCode == Activity.RESULT_CANCELED) {
if (data != null) {
final String validationError = data.getStringExtra("validation_error");
if (validationError != null) {
if (BuildConfig.DEBUG) {
//validation error should be shown to developer only, not users.
MessageDialogFragment.newInstance(R.string.title_validation_error, validationError).show(getSupportFragmentManager(), "validation error");
}
Log.e(TAG, "Validation failed:" + validationError);
}
} else {
new StickerPackNotAddedMessageFragment().show(getSupportFragmentManager(), "sticker_pack_not_added");
}
}
}
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
mInterstitialAd.show();
}
});
}
我尝试在这些代码之前加载该呼叫,但之前无法加载。
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-8920922366585510/4181958830");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
该应用程序是一个开源github,如果要下载以查看完整的代码和帮助,请点击下面的链接:DOWNLOAD COMPLETE CODE
答案 0 :(得分:0)
将以下内容放入您的onCreate
方法中:
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("ca-app-pub-8920922366585510/4181958830");
mInterstitialAd.loadAd(new AdRequest.Builder().build());
然后将以下内容放入您的onActivityResult
:
if(mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
答案 1 :(得分:0)
我遇到了同样的问题,当然我也不想在创建活动时加载广告,因此我决定在对话框打开的同时加载广告,并禁用“ adicionar”按钮。广告已加载,然后启用按钮。
我还决定添加描述以等待按钮启用。
这可能不是您要寻找的解决方案,但至少在数据加载方面是最理想的。希望对您有帮助!