【问题标题】:How to show Admob interstitial on app start and exit如何在应用启动和退出时显示 Admob 插页式广告
【发布时间】:2015-06-24 07:59:10
【问题描述】:

我可以在 App 启动时显示 Admob Interstitial,我也可以在 App 退出时显示 Admob Interstitial。但是现在,我想在 App 启动和退出时显示 Admob Interstitial。我尝试将 2 个代码组合在一起,一个用于应用启动,一个用于应用退出,但结果仅在应用启动时显示广告,在应用退出时不显示广告。

这是我的代码:

    InterstitialAd interstitial;
private static final String AD_UNIT_ID = "ca-app-pub-2869508995487312/2690564381";
private InterstitialAd interstitialAd;

@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.science_layout);

    interstitialAd = new InterstitialAd(this);

    interstitialAd.setAdUnitId(AD_UNIT_ID);
    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 onAdOpened() {


        }

        @Override
        public void onAdFailedToLoad(int errorCode) {

        }
    });
}
@Override
protected void onPostResume() {
    // TODO Auto-generated method stub
    super.onPostResume();
    displayInterstitial();
}

@Override
protected void onStop() {
    // TODO Auto-generated method stub
    super.onStop();
    displayInterstitial();
}

// Invoke displayInterstitial() when you are ready to display an interstitial.
    public void displayInterstitial() {
      if (interstitialAd.isLoaded()) {
        interstitialAd.show();
      }
    }

谁能帮我修复代码或提供新的解决方案?谢谢和最好的问候!

【问题讨论】:

  • 别这样。对于大多数用户来说,它可以立即卸载。
  • 我只是为 sub_activity 做的,而不是 main_activity 或 Home_activity :)
  • 最简单的方法是创建一个应用退出按钮,然后调用 interstitial.show();将它们送回您的家庭活动。您可以调用 onBackPressed() 但这会产生其他问题并激怒您的用户。

标签: android admob


【解决方案1】:

Google 的插页式广告指南明确规定,不建议在应用加载或退出时展示广告。

https://support.google.com/admob/answer/6066980?hl=en

>应用加载或退出(不推荐)

避免在应用加载、后退按钮以及何时放置插页式广告 退出应用程序作为插页式广告是为了放置在两者之间 内容。

来到您的代码,它应该可以在应用加载时间内正常工作。其次,一旦广告被加载并显示,您必须再次加载它才能再次显示它。要调用它,您应该编写“displayInterstitial();”在 onPause 而不是 onStop 中,并且仅在应用的一个活动中。

http://developer.android.com/training/basics/activity-lifecycle/pausing.html

但是,我认为您不应该在应用加载和退出时展示广告,因为这可能会导致您的 admob 帐户出现问题,并会增加您应用的卸载率。

【讨论】:

    【解决方案2】:

    这违反了 Admob 规则,但我建议在启动画面后显示广告,如谷歌建议 Admob Interstitial after app loads

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多