6

我一直在尝试将快速原生广告集成到我的应用程序中。在快速原生广告文档中,我读到它们在以 FULL_WIDTH 广告尺寸显示时效果最佳。我尝试将广告尺寸设置为 FULL_WIDTH,但失败并出现 IllegalStateException:

Caused by: java.lang.IllegalStateException: The ad size and ad unit ID must be set before loadAd is called.

这是我的xml代码:

<com.google.android.gms.ads.NativeExpressAdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="FULL_WIDTH"
ads:adUnitId="@string/native_ad_unit"/>

广告单元是正确的,它适用于其他广告尺寸,如 320x150 等。

我的实现有问题吗?

干杯

4

2 回答 2

19

我找到了一个解决方案,如果您像这样使用它,它将起作用:

<com.google.android.gms.ads.NativeExpressAdView
 android:id="@+id/adView"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 ads:adSize="FULL_WIDTHx80"
 ads:adUnitId="@string/native_ad_unit"/>
于 2016-05-26T20:19:38.787 回答
1

您只能以编程方式设置它。这是文档的摘录:

在以编程方式为 NativeExpressAdView 创建 AdSize 时,发布商还可以使用 FULL_WIDTH 常量。在这种情况下,广告将占据设备屏幕的整个宽度。

来源:https ://firebase.google.com/docs/admob/android/native-express#nativeexpressadview

于 2016-05-21T23:17:51.810 回答