我在应用布局中有AdMob块,如
<android.support.constraint.ConstraintLayout ...>
...
<com.google.android.gms.ads.NativeExpressAdView
android:id="@+id/ad"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
app:adSize="350x100"
app:adUnitId="ca-app-pub-..."
app:layout_constraintTop_toBottomOf="@+id/refresh"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />
</android.support.constraint.ConstraintLayout>
在主要活动中,还有AdMob初始化代码:
MobileAds.initialize(this, "ca-app-pub-...");
NativeExpressAdView adView = (NativeExpressAdView) findViewById(R.id.ad);
// adView.setAdSize(AdSize.SMART_BANNER);
// adView.setAdUnitId("ca-app-pub-...");
AdRequest request = new AdRequest.Builder()
.addTestDevice(...)
.build();
adView.loadAd(request);
如果在布局XML中设置app:adSize="350x100"
,则会显示广告块。
但是,当我尝试设置app:adSize="SMART_BANNER"
时,错过了广告块,日志中出现错误消息:
收到错误HTTP响应代码:403
如果我删除&#34; app:adSize&#34;和&#34; app:adUnitId&#34;从XML中以编程方式在Activity中设置,在上面的代码中取消注释行
...
adView.setAdSize(AdSize.SMART_BANNER);
adView.setAdUnitId("ca-app-pub-...");
..
广告块显示在内部错误消息:
必需的XML属性&#34; adSize&#34;失踪了。
如何将广告尺寸设置为SMART_BANNER
值?
答案 0 :(得分:0)
app:adSize =“SMART_BANNER”用于横幅广告,不用于原生广告。您必须提供原生广告的尺寸。
您可以将原生广告视图的宽度设置为match_parent
,以便在任何设备上都可以。