奇怪的混淆问题

时间:2011-06-23 20:56:47

标签: android admob

我今天对我的应用程序做了一些更新,但现在admob不正常工作,它在广告中给我一个错误adview missing xml attribute "adsize"。现在,我所做的更改与广告无关,自从我实施这些广告以来,它们一直都是一样的

这是我的xml

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res/com.notify.me.lite"
android:layout_width="fill_parent"
android:id="@+id/mainLayout1"
android:layout_height="fill_parent" android:orientation="vertical"> 
            <com.google.ads.AdView android:id="@+id/adView"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_alignParentBottom="true"
                     ads:adUnitId="id"
                     ads:adSize="BANNER"/>   
    <WebView android:layout_width="fill_parent" android:id="@+id/webView1" android:layout_height="fill_parent"></WebView>

</LinearLayout>

及其实施的地方

public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_webview);

    WebView browser = (WebView) findViewById(R.id.webView1);
    browser.loadUrl("file:///android_asset/about.html");
    AdView adView = (AdView)this.findViewById(R.id.adView);
    AdRequest request = new AdRequest();
    request.setTesting(true);
    adView.loadAd(request);
}

正如你所看到的那样,xml文件中有adsize,所以我没有理由得到那个错误。关于为什么会突然发生这种情况的想法?

2 个答案:

答案 0 :(得分:1)

Google更新了AdMob库,但尚未记录所需的更改,根据此论坛thread

更改的实质是更新广告命名空间:

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

答案 1 :(得分:0)

不知道为什么它突然停止工作但是无论何时我使用Admob我总是把它放在一个单独的布局中,用xml像:

<RelativeLayout android:id="@+id/rLayAdMob"
        android:layout_width="match_parent" android:layout_height="50dip">
</RelativeLayout>

然后在onCreate功能中,我将adView设置为:

adView = new AdView(Menu.this, AdSize.BANNER, MY_AD_UNIT_ID);
RelativeLayout layout = (RelativeLayout)findViewById(R.id.rLayAdMob);
layout.addView(adView);

我从来没有遇到任何问题这样做,并且只需要对代码进行少量更改。

希望这有帮助,

肯尼