【问题标题】:Admob native ads is not showing even if onAdLoaded is firing即使 onAdLoaded 正在触发,Admob 原生广告也不会显示
【发布时间】:2017-02-20 09:06:41
【问题描述】:

我已经集成了Admob 原生广告。我在多个屏幕中使用了相同的 adUnitId 来加载原生广告。在大多数屏幕中,我的代码工作正常,但在某些屏幕中 onAdLoaded 被覆盖的方法正在调用,但广告没有显示。 我正在将以下代码用于原生广告。

 nativeExpressAdView.setAdListener(new AdListener() {
                @Override
                public void onAdFailedToLoad(int i) {
                    super.onAdFailedToLoad(i);
                    nativeExpressAdView.setVisibility(View.GONE);
                }

                @Override
                public void onAdLeftApplication() {
                    super.onAdLeftApplication();
                    nativeExpressAdView.setVisibility(View.GONE);
                }

                @Override
                public void onAdLoaded() {
                    super.onAdLoaded();
                    nativeExpressAdView.setVisibility(View.VISIBLE);
                }


nativeExpressAdView.loadAd(new AdRequest.Builder().build());
                nativeExpressAdView.setVisibility(View.VISIBLE);

Nativeexpressview的视图

<com.google.android.gms.ads.NativeExpressAdView
    android:id="@+id/nativeExpressAdView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    app:adSize="300x250"
    android:layout_marginTop="@dimen/card_margin"
    app:adUnitId="@string/ad_unit_id"/>

onAdLoaded() 方法正在触发,但广告未加载。任何人都可以帮助我确定问题。

【问题讨论】:

  • 您的日志中一定有一些错误,请仔细检查。我最近也遇到了类似的问题,这是由于网络错误
  • 我在日志中没有看到任何错误。你能告诉我你是如何解决类似问题的吗?
  • 检查视图是否有足够的空间来显示。在您的情况下,父容器必须至少 300dp 宽和 250dp 高。检查:stackoverflow.com/questions/21848532/…
  • 谢谢哥们 问题在于视图大小。我已经解决了某些屏幕的问题并正在休息。

标签: android admob native-ads


【解决方案1】:

显示添加后,始终将横幅放在前面 nativeExpressAdView.bringToFront() 我也在 onresume 中这样做。

【讨论】:

  • 为什么投反对票,请解释一下?您的屏幕是 Frame、Relative、Coordinator 或类似的布局,并且您已经动态更改了视图?您的广告是否有视图?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-24
  • 2018-05-12
  • 1970-01-01
相关资源
最近更新 更多