我已經整合了Admob,它正在投放DFP廣告。以下是XML代碼Admob - 沒有足夠空間顯示廣告想要
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/headerAdLayout"
android:paddingLeft="0dp"
android:paddingRight="0dp">
<com.google.android.gms.ads.doubleclick.PublisherAdView
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
ads:adUnitId="/4359979/Top"
ads:adSize="BANNER"
>
</com.google.android.gms.ads.doubleclick.PublisherAdView>
</LinearLayout>
然後,我在加載廣告之前明確設置了廣告尺寸,以確保有足夠的空間。我人還確保了沒有填充既左,右
PublisherAdView mAdView = (PublisherAdView) header.findViewById(R.id.adView);
mAdView.setMinimumWidth(720);
mAdView.setMinimumHeight(404);
mAdView.setAdSizes(new AdSize(720, 404));
PublisherAdRequest adRequest = new PublisherAdRequest.Builder().build();
mAdView.loadAd(adRequest);
但是我仍然在logcat中得到這個消息:
Not enough space to show ad. Needs 720x404 dp, but only has 533x404 dp.
我的屏幕寬度被報告爲800使用以下碼。 (在Samsung S4 mini設備上以橫向模式運行)
WindowManager wm = (WindowManager) activity.getSystemService(activity.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
int width = display.getWidth();
我在哪裏弄錯了?
你得到的是以像素爲單位的寬度http://stackoverflow.com/questions/1016896/get-screen-dimensions-in-pixels不是密度獨立像素http://stackoverflow.com/questions/5669747/android-how-使用DIP-density-independent-pixel-in-code –
使用較小的橫幅 – josedlujan