Android中的AdMob“AdView缺少必需的XML属性'adSize'”

时间:2011-08-25 04:57:16

标签: android xml-parsing admob

我正在尝试在我的应用程序中实现AdMob。但不知道它显示这个错误,我的R.java文件由于它没有生成。我已经尝试了所有方法来解决这个问题,比如Clean,Build,Build All。但非对我有用。 在我的代码片段中显示错误“解析XML时出错:未绑定前缀”

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="vertical"
android:background="@color/bgcolor">

<LinearLayout
android:id="@+id/Linearlayout1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >

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


</LinearLayout>

请帮帮我。我被困在这里:(

3 个答案:

答案 0 :(得分:16)

可能是命名空间问题。您必须定义命名空间。

尝试添加

xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"

答案 1 :(得分:6)

新的Admob SDK(Google Play服务)需要另一个名称空间

xmlns:ads="http://schemas.android.com/apk/res-auto"

答案 2 :(得分:3)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:layout_width="fill_parent" android:id="@+id/rltvLayoutPromote"
    android:layout_height="fill_parent">
    <LinearLayout android:id="@+id/linearLayoutwebview"
        android:layout_height="wrap_content" android:layout_width="wrap_content"
        android:orientation="vertical">
        <WebView android:id="@+id/webViewPromote"
            android:layout_width="fill_parent" android:layout_height="fill_parent"
            android:fitsSystemWindows="true" />
    </LinearLayout>
    <LinearLayout android:layout_width="fill_parent"
        android:id="@+id/ad_layout" android:layout_height="wrap_content"
        android:gravity="bottom" android:layout_alignParentBottom="true"
        android:layout_alignBottom="@+id/home_layout">
        <com.google.ads.AdView android:layout_width="wrap_content"
            android:layout_height="wrap_content" ads:adUnitId="XXXXXXXXXX"
            ads:adSize="BANNER" android:id="@+id/adView" ads:refreshInterval="60" />
        <!--            put 3 if not working-->
    </LinearLayout>
</RelativeLayout>

并将此行放在manifest.xml文件中

  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  <meta-data android:value="true" android:name="ADMOB_ALLOW_LOCATION_FOR_ADS" />

以上代码对我来说非常合适...访问此网站以获取完整参考help forandroid-admob
感谢Pragna