2017-02-20 17 views
0

我已经整合了Admob原生广告。我在多个屏幕中使用了相同的adUnitId来加载原生广告。在大多数屏幕上我的代码工作正常,但在某些屏幕onAdLoaded覆盖的方法正在调用,但广告不显示。 我将以下代码用于原生广告。即使onAdLoaded正在开火,Admob原生广告也不会显示

查看的
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()方法烧制,但广告没有加载。任何人都可以帮助我找出问题。

+0

您必须在日志中发现一些错误,仔细检查。我最近也遇到了类似的问题,这是由于网络错误 – Ezio

+0

我没有看到日志中的任何错误。你能否告诉我你是如何解决类似问题的。 –

+0

检查视图是否有足够的空间来显示。在你的情况下,父容器必须至少有300dp宽和250dp高。 检查:http://stackoverflow.com/questions/21848532/not-enough-space-to-show-ad-admob – Gordak

回答

-1

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

+0

为什么downvote,请解释一下?你的屏幕如何是框架,相对,协调员或类似的布局,你有改变视野?您如何在广告顶部观看视频? – Galeen