我正在尝试在android应用程序中显示admob nativeexpressads。
示例广告显示在模拟器,我觉得一切似乎都很好。
然而,在真正的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和ADHWEIGHT与admob adunit中设置的完全相同。
以及:
...
@Override
public void onAdLoaded() {
super.onAdLoaded();
Log.i("I/Ads", "onAdLoaded");
}
是的,onadloaded确实被称为。
我也试过这个,但没用。我也研究了许多其他材料,但没有一种是有效的。
编辑:我进一步调试并发现此错误:09-04 13:53:46.204 2502-2502/com.swars.android w/ads:没有足够的空间显示广告。需要360x100 dp,但只有320x0 dp。
大小与admob adunit中设置的大小相同。所以,看来我应该让它变小。然而,这个错误有一个谜,因为它说高度是0(320x0dp)。有人能帮我解释一下吗?
1条答案
按热度按时间mm9b1k5b1#
配置relativelayer,以便:
查看配置到:
来源