Java类代码(在onCreate方法中):
AdView adView = (AdView) this.findViewById(R.id.adView);
AdRequest MyAdRequest = new AdRequest();
MyAdRequest.setTesting(true);
adView.loadAd(MyAdRequest);
layout / main.xml代码:
<com.google.ads.AdView android:id="@+id/adView"
android:layout_width="wrap_content" android:layout_height="wrap_content"
ads:adUnitId="My_AD_PUBLISHER_ID" ads:adSize="BANNER"
android:layout_alignParentBottom="true" android:layout_centerInParent="true" />
values / attrs.xml代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="com.google.ads.AdView">
<attr name="adSize">
<enum name="BANNER" value="1" />
<enum name="IAB_MRECT" value="2" />
<enum name="IAB_BANNER" value="3" />
<enum name="IAB_LEADERBOARD" value="4" />
</attr>
<attr name="My_AD_PUBLISHER_ID" format="string" />
</declare-styleable>
</resources>
在Manifest文件中,在应用程序标记结束之前:
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation" />
在清单标记结束之前:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
库也已从属性包含到Java构建路径中
并且代替My_AD_PUBLISHER_ID
,我已经仔细地放置了我的实际广告代码
完成所有这些后,广告正在设备上的模拟器中显示。请告诉我我错过了什么?
答案 0 :(得分:2)
正如您所提到的,LogCat说:
onFailedToReceiveAd(网络错误......
这意味着它是一个网络问题。即使您可以加载Web浏览,也不意味着网络没问题,它可能被防火墙或其他网络配置阻止。我之前遇到过同样的问题。
如果您尝试使用真实设备而非模拟器,则未显示的测试广告可能是由除网络问题之外的其他admob问题引起的。最常见的混淆问题是“无广告显示”错误,这与Admob填充率有关。
答案 1 :(得分:2)
如果像我一样你有移动宽带,你需要在启动模拟器之前在互联网上建立连接,否则它似乎没有连接
答案 2 :(得分:0)
在您的资源文件中,我注意到您有
<attr name="My_AD_PUBLISHER_ID" format="string" />
应该阅读的地方
<attr name="adUnitId" format="string" />
不确定这是否是您复制到StackOverflow时的拼写错误。我相信这会导致构建错误吗?