显示按下后退按钮上的插页式广告?
这是我的清单文件:显示按下后退按钮上的插页式广告?
<activity
android:screenOrientation="portrait"
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:theme="@android:style/Theme.Translucent" />
这是我的活动:
@Override
public void onBackPressed() {
InterstitialAd interstitialAd= new InterstitialAd(this);
interstitialAd.setAdUnitId(getString(R.string.interstitial_full_screen));
AdRequest adRequest = new AdRequest.Builder().build();
interstitialAd.loadAd(adRequest);
interstitialAd.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
if (interstitialAd.isLoaded()) {
interstitialAd.show();
}
}
@Override
public void onAdClosed() {
super.onAdClosed();
finish();
}
});
}
我收到的广告屏幕只有2-3倍,而按回button.So,我怎样才能解决它,在每个后退按钮上按下。
试试这个
InterstitialAd interstitialAd = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_blue);
interstitialAd= new InterstitialAd(this);
interstitialAd.setAdUnitId(getString(R.string.interstitial_full_screen));
AdRequest adRequest = new AdRequest.Builder().build();
interstitialAd.loadAd(adRequest);
}
@Override
public void onBackPressed() {
if (interstitialAd.isLoaded()) {
interstitialAd.show();
interstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
super.onAdClosed();
finish();
}
});
}else{
super.onBackPressed();
}
}
我使用了你的代码...但是有时候广告已经加载,有时候不是...是否强制所有时间在interstitialAd加载时都可以加载? –
当然,如果广告未加载/可用,我们如何显示广告? – Max
如果您在onStart/onResume中添加了相同的代码,请将其删除或删除onBackPressed中的代码。
因为当ActivityB占据前景时,ActivityA处于onPause和onStop状态。
当ActivityA返回时(当从活动B返回按下时),它将获得onStart,然后它调用onResume(Activity A)。
问题与你的代码是你保持interstetial广告加载,并同时显示在onback机,装载interstetial增加需要时间,有时它也无法加载,当它无法加载广告,或者如果没有广告在AdMob广告的情况不会显示
更好的是在onCreate方法加载插页式广告,并将它们显示在后面为max在他的回答表明
,并在你的代码将如何用户从屏幕退出广告不可用?
该案件也涵盖在最大的答案,所以去与他的答案。如果广告未显示,则必须考虑广告不存在并非代码中的错误,我还建议使用此ID,同时测试它是否为测试广告并且其命中率将非常高
interstitial.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
您可以在onCreate()事件中准备广告,并将其呈现在onBackPressed()事件中。广告准备工作需要一定的时间,所以如果您在onBackPressed()时准备广告,那么广告在当时就没有准备好了。 –