【问题标题】:Admob interstitial on app start应用启动时的 Admob 插页式广告
【发布时间】:2014-05-28 08:12:38
【问题描述】:

我希望在用户首次打开应用程序或用户导航到另一个应用程序(如浏览器)然后返回我的应用程序时显示 admob 插页式广告。这是我当前的插页式广告代码,此代码完全包含在 OnCreate 方法中。

// Create the interstitial.
        interstitial = new InterstitialAd(this);
        interstitial.setAdUnitId("ca-app-pub-XXXXXXXXXXXXXXXX");

        // Create ad request.
        AdRequest adRequest2 = new AdRequest.Builder().build();

        // Begin loading your interstitial.
        interstitial.loadAd(adRequest2);

        interstitial.setAdListener(new AdListener() {

            @Override
            public void onAdLoaded() {
                if (interstitial.isLoaded()) {
                    interstitial.show();
                }

            }

        });

这似乎适用于大多数情况,但在某些设备上,这会在用户关闭后 2-3 秒创建一个插页式循环。具有循环的设备之一是 Galaxy Tab3 。我似乎无法找到设置代码的正确方法,以便在任何设备上都不会发生这种行为。

【问题讨论】:

    标签: android admob interstitial


    【解决方案1】:

    使用以下代码在应用启动时显示插页式广告。

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    
    interstitial = new InterstitialAd(this);
    interstitial.setAdUnitId("***********");
    
    AdRequest adRequest = new AdRequest.Builder().build();
    interstitial.loadAd(adRequest);
    interstitial.setAdListener(new AdListener() {
        public void onAdLoaded() {
            displayInterstitial();
        }
    });
    }
    
    public void displayInterstitial() {
    if (interstitial.isLoaded()) {
        interstitial.show();
    }
    }
    

    【讨论】:

      【解决方案2】:

      创建一个布尔变量来协助它..

      boolean ad_shown = false;
      

      当您执行 .show() 时,将变量设置为 true。

      别忘了给 if 加个警戒

      if (interstitial.isLoaded() && !ad_shown) {
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-06-24
        • 1970-01-01
        • 2017-05-20
        • 2021-11-24
        • 1970-01-01
        • 1970-01-01
        • 2020-09-21
        相关资源
        最近更新 更多