【问题标题】:Ironsource Banner Only Showing In main Activity and in other activities after implementation not showingIronsource 横幅仅在主要活动中显示,实施后在其他活动中未显示
【发布时间】:2021-12-07 16:57:08
【问题描述】:

我已经在所有活动中使用以下方法实现了 Ironsouce 横幅,但它仅在主要活动中有效,在其他活动中显示错误消息

 API:不允许在没有广告单元的情况下多次调用 init API:La - 无法加载横幅 - loadBanner 已调用且仍在进行中 API:La - 无法加载横幅 - loadBanner 已调用且仍在进行中

    IronSource.init(this, "APP_ID");
    IronSource.setMetaData("Facebook_IS_CacheFlag","IMAGE");
    final FrameLayout bannerContainer = findViewById(R.id.adview);
    IronSourceBannerLayout bannerLayout = IronSource.createBanner(this, ISBannerSize.SMART);
    IronSource.loadBanner(bannerLayout, (String) "DefaultBanner");
    FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,
            FrameLayout.LayoutParams.WRAP_CONTENT);

    bannerContainer.addView(bannerLayout);
    IronSource.loadBanner(bannerLayout);

    IronSource.loadInterstitial();

    IronSource.setInterstitialListener(new InterstitialListener() {
        @Override
        public void onInterstitialAdReady() {
            IronSource.showInterstitial("DefaultInterstitial");
        }

        @Override
        public void onInterstitialAdLoadFailed(IronSourceError ironSourceError) {

        }

        @Override
        public void onInterstitialAdOpened() {

        }

        @Override
        public void onInterstitialAdClosed() {

        }

        @Override
        public void onInterstitialAdShowSucceeded() {

        }

        @Override
        public void onInterstitialAdShowFailed(IronSourceError ironSourceError) {

        }

        @Override
        public void onInterstitialAdClicked() {

        }
    });

【问题讨论】:

    标签: java android ads banner ironsource


    【解决方案1】:

    如果您从一个活动到另一个活动来回移动,则必须销毁横幅,请始终在加载新横幅之前销毁横幅,

    所以在进行活动 A 到 B 时破坏 A 中的横幅,而不是转到 B 并加载 B 中的横幅。

      IronSource.destroyBanner(banner);
    

    在从 B 回到 A 的同时,在 B 中销毁并再次在 A 中重新加载横幅

    你可以使用 onBackPressed 来销毁横幅

        public void onBackPressed() {
            super.onBackPressed();
            IronSource.destroyBanner(banner);
            finish();
        }
    

    如果导航栏上有后退按钮

    @Override
        public boolean onOptionsItemSelected(MenuItem item) {
            if (item.getItemId() == android.R.id.home) {
                IronSource.destroyBanner(banner);
                finish();
                return true;
            }
            return super.onOptionsItemSelected(item);
        }
    

    这在您的情况下可能会有所不同android.R.id.home

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-14
      相关资源
      最近更新 更多