2016-12-28 5 views
0

私たちはリストビューにadmob広告を表示しようとしています。 onCreate()の時間に3つの広告をプリロードしようとしているので、10個のオブジェクトごとに広告を表示することがあります。次に、広告を読み込むためのコードスニペットを示します。上記のコードではAndroid admob ExpressAdview - 一致しない

AdRequest request = new AdRequest.Builder() 
       .addTestDevice("C6736622852CDF40B5FC25A9DF38DAAB") 
       .build(); 
final NativeExpressAdView adView = (NativeExpressAdView)View.inflate(context, R.layout.admob_ad_view, null); 
adView.loadAd(request); 
adView.setAdListener(new AdListener() { 
      @Override 
      public void onAdLoaded() { 
       super.onAdLoaded(); 
       listOfAds.add(adView); 
       } 
} 

リストビューダウンユーザーがスクロールは、我々はこのリストから広告をロードしている間、私は、リストビューに3 adviewsとストアを作成することができています。 recyclerview要素の空の線形レイアウトを作成し、onBind()では、この線形レイアウトにこのadViewオブジェクトを追加します。

linearlayout.addView(adView); 

ISSUE:それは時間の75%のために正常に動作します。それ以外の場合は、空のセルが表示されます。ユーザーが空のセルをスクロールまたはタップしようとすると、adviewが更新され、広告が完全に表示されます。

<com.google.android.gms.ads.NativeExpressAdView 
    android:id="@+id/adView" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:ads="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    ads:adUnitId="@string/SHORT_ADMOB_AD_UNIT_ID" 
    ads:adSize="FULL_WIDTHx80"> 
</com.google.android.gms.ads.NativeExpressAdView> 

コンパイル( 'com.google.firebase:firebase-広告:9.2.0'){ 力= TRUE。 }

何が問題になりますか?

答えて

0

私のコードに問題が見つかりました。ロジックに基づいたモードでは、メソッドnotifyDataSetChanged()を呼び出すことで、頻繁に行をリフレッシュしていました。ある行が変更されていても、コードはすべての行を更新していました。これにより、admob広告ビューの問題が発生しました。行を選択的に更新するロジックを修正しました。 (広告行を除く)