我刚刚开始考虑将Admob广告投放到我正在构建的Android应用中。到目前为止,没有好处。我一直在关注我从adMob网站下载的AdMod_Android_SDK_Instructions.pdf中的示例,但感到很困惑。在第7页上,我看到import语句将包引用为com.admob.android.ads - 但在我下载的SDK中,包是com.google.ads - 这是谷歌获得的admob之前的剩余部分吗?然后继续调用方法a dView.requestFreshAd()
; - 最新代码中不存在。
请有人帮我解决一些实际有用的代码吗?我对logcat的具体错误是:
AdView缺少必需的XML属性adUnitId。
...然后我打电话给adView.loadAd(new AdRequest())
;我明白了:
Invalid unknown request error: Cannot determine request type. Is your ad unit Id correct?
onFailedToReceiveAd(Invalid Google Ad request).
任何帮助,非常感谢! 感谢。
答案 0 :(得分:12)
自4.1.0起,
mob1lejunkie是完全正确的,你可以删除
所以这是一个带有admob 4.1.0的工作xml片段:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="fill_parent"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads">
<com.google.ads.AdView android:id="@+id/ad"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adUnitId="a14d7f7d2180609"
ads:adSize="BANNER" />
</RelativeLayout>
谷歌是否要求开发人员设置一个新代码并使用谷歌尚未记录的图书馆?它让我想起了adwhirl冒险......
尽管如此,我必须说我很高兴谷歌把它放到位并删除attrs.xml的东西。在android中使用admob和项目继承要容易得多。
此外,关于在项目中使用多个广告浏览量,请注意,在此版本中,现在可以根据此线程的请求在应用程序的strings.xml文件中添加admob id:{{3} }
只需将这种方式放在xml布局中,即可获得所有广告提示:
ads:adUnitId="@string/admob_unit_id"
然后
<string name="admob_unit_id">a14d7f7d2180609</string>
在strings.xml文件和此文件的所有其他本地化版本中。 这将为您提供一个集中的位置,以便在您的所有视图中输入您的admob ID。
确实很棒。
此致 Steff
答案 1 :(得分:2)
我有4.1.0的类似问题,结果是 Admob文档(截至5月15日)已过期。
不再需要 attrs.xml
,布局中的命名空间需要
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads
然后是旧的
xmlns:ads="http://schemas.android.com/apk/res/com.your.packagename
答案 2 :(得分:1)
似乎PDF已过时。
答案 3 :(得分:1)
此页面帮助我在XML布局中放置了广告:http://code.google.com/mobile/ads/docs/android/banner_xml.html