以编程方式创建 Admob 原生广告

Create an Admob native ad programmatically

我正在尝试以编程方式设置来自 Admob 的原生广告,但官方指南中几乎没有关于它的文档 here。 我想我已经接近解决方案了,但我不知道如何设置单位大小。

文档说:

Publishers can also use the FULL_WIDTH constant when programmatically creating an AdSize for a NativeExpressAdView.

问题是这个 FULL_WIDTH 单位不是像其他可用单位那样的 AdSize 单位,它只是 returns 一个整数。

这是我现在得到的:

mAdmobNativeExpressAdview = new NativeExpressAdView(this);
mAdmobNativeExpressAdview.setAdUnitId(getString(R.string.mediation_native_id));
mAdmobNativeExpressAdview.setAdSize(AdSize.FULL_WIDTH);

但是最后一行无法实现,因为 setAdSize 需要一个 AdSize 对象。

还有其他方法可以设置这个属性吗?

查看 documentation

中找到的样本

mNativeExpressAdView.setAdSize(new AdSize(400, 100));

哪里

AdSize 构造函数是 declared 作为

AdSize(int width, int height)

Create a new AdSize.

在您的代码中:

mAdmobNativeExpressAdview.setAdSize(new AdSize(AdSize.FULL_WIDTH, 20));

例如,设置广告尺寸占满宽度,高度为20dp。

根据您的布局进行调整。