2017-09-04 99 views
0

我試圖在我的Android應用程序中顯示AdMob NativeExpressAds。AdMob NativeExpressAds拒絕顯示在實際的Android設備上

示例廣告出現在模擬器中,我認爲一切都很好。

但是,在實際Android設備上的實際測試中,廣告拒絕顯示 - 是否設置了addTestDevice(「...」)。

我的代碼是:

public NativeExpressAdView getNativeExpressAdView(Activity activity) { 
    NativeExpressAdView adView = new NativeExpressAdView(activity); 
    adView.setAdListener(new TestAdListener(adView)); 
    adView.setAdSize(new AdSize(adWidth, adHeight)); 
    adView.setAdUnitId(adUnitID); 
    AdRequest.Builder adRequestBuilder = new AdRequest.Builder(); 
    //adRequestBuilder.addTestDevice("187AE74C3A6B5BA1B5E94A46EC9FD3F6"); 
    adView.loadAd(adRequestBuilder.build()); 
    return adView; 
} 

注:adWidth和adHeight是完全一樣什麼是對AdMob的AdUnit設置。

和:

... 

    @Override 
    public void onAdLoaded() { 
     super.onAdLoaded(); 
     Log.i("I/Ads", "onAdLoaded"); 
    } 

是,onAdLoaded確實調用。

我也試過this,但它沒有奏效。我還研究了許多其他材料,但都沒有工作。

編輯: 我進一步調試,發現這個錯誤: 09-04 13:53:46.204 2502年至2502年/ com.swars.android W /廣告:沒有足夠的空間來顯示廣告。需要360x100 DP,但只有320x0 DP。

尺寸與AdMob AdUnit中設置的尺寸相同。所以,我認爲我應該做的更小。然而,這個錯誤有一個謎,因爲它表示高度爲0(320x0 dp)。任何人都可以幫助解決這個問題嗎?

回答

1

配置您的RelativeLayer,所以:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
... 
android:paddingLeft="0dp" 
android:paddingRight="0dp" 
... 
> 

的AdView配置到:

<com.google.ads.AdView 
android:id="@+id/adMobadView" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
... 
/> 

Source