如何获得谷歌&x27;s使用Android设备为AdMob 4.1.0工作的示例代码

如何获得谷歌&x27;s使用Android设备为AdMob 4.1.0工作的示例代码,android,admob,Android,Admob,我想使用xml向我的应用程序添加横幅广告。为了了解如何做到这一点,我通读了。甚至还有示例代码。但是,示例项目没有在我的设备(摩托罗拉xt720)上显示广告。我在LogCat中找不到任何相关信息 如果我转到项目设置,删除4.0.4 jar并添加我用Android SDK和AVD Manager下载的4.1.0 jar(下载的“Google Admob Ads SDK包,修订版2”,文件是Android-SDK-linux_86/extras/Google/Admob_Ads_SDK/GoogleA

我想使用xml向我的应用程序添加横幅广告。为了了解如何做到这一点,我通读了。甚至还有示例代码。但是,示例项目没有在我的设备(摩托罗拉xt720)上显示广告。我在LogCat中找不到任何相关信息

如果我转到项目设置,删除4.0.4 jar并添加我用Android SDK和AVD Manager下载的4.1.0 jar(下载的“Google Admob Ads SDK包,修订版2”,文件是
Android-SDK-linux_86/extras/Google/Admob_Ads_SDK/GoogleAddMobadsdk-4.1.0.jar
),那么我会在LogCat中得到这个

错误/Ads(4486):缺少AdView 必需的XML属性“adSize”

信息/广告(4486):获取测试广告 这个设备,呼叫 addTestDevice(“00000000000000000000000000”)

我做出了这样的改变:

    AdRequest adRequest = new AdRequest();
    adRequest.addTestDevice("00000000000000000000000000000000");
    adView.loadAd(adRequest);
现在我明白了:

错误/Ads(5018):AdView缺少必需的XML属性“adSize”

警告/Ads(5018):无效的未知请求错误:无法确定请求类型。你的广告单元id正确吗

信息/广告(5018):onFailedToReceiveAd(无效的谷歌广告请求。)

如果我编辑main.xml将ads:adUnitId修改为admob帐户中的值,我仍然会收到相同的错误。如您所见,我正在设置我的adSize:

<com.google.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    ads:adUnitId="000000000000000"
    ads:adSize="BANNER" />


总而言之:

  • 我修复了库版本
  • 我添加了我的测试设备
  • 我设置了我的广告:成人
但我仍然得到
AdView缺少必需的XML属性“adSize”


我做错了什么?

Admob在4.1.0版中的工作方式有一些更改

关于这个问题,以及他们如何没有更新文档,有很多疑问

谷歌员工蒂姆发布:

1) 删除attrs.xml(或者如果您自己的自定义属性需要它,请删除与AdViews相关的部分)

2) 从
xmlns:ads=”更改布局中的命名空间http://schemas.android.com/apk/res/com.your.packagename“
to
xmlns:ads=”http://schemas.android.com/apk/lib/com.google.ads“


一旦你做了这两个更改(以及你已经做的其他更改),你现在应该会看到一则广告。

要清楚:当我问这个问题时,我已经知道答案了。我发现SO上的大多数其他类似问题都是针对用户的(他们发布了自己的代码并得到了评论),而不是针对所有人的一般问题。如果有人可以制作这个社区wiki,以便为admob的下一个版本进行更新,那就太好了!你能理解这篇文章的问题吗?它在SDK 6.3.1中也不起作用。在我的模拟器设备上仍然没有看到广告。