2011-11-03 139 views
1

我正在將AdMob集成到我的Android應用程序中。Admob集成 - 問題

main.xml

`<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    > 
<com.google.ads.AdView android:id="@+id/adView" 
           android:layout_width="wrap_content" 
           android:layout_height="wrap_content" 
           ads:adUnitId="XXX" 
           ads:loadAdOnCreate="true" 
           ads:adSize="BANNER" /> 
</LinearLayout>` 

manifest.xml

<activity android:name="com.google.ads.AdActivity" 
       android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 
android:configChanges="orientation|keyboard|keyboardHidden"/> 

我的類:

AdView adView = (AdView)findViewById(R.id.adView); 
     adView.loadAd(new AdRequest()); 

我採用了Android 2.1。當我在模擬器上運行時,它向我顯示:

You Must have AdActivity declared in AndroidManifest.xml with configChanges

有人能幫助我嗎?

回答

2

AdMob Documentation

的AdMob 4.3.1需要你一些額外的configChanges添加到AdActivity在您的清單。 AdActivity條目現在應該如下所示。

<activity android:name="com.google.ads.AdActivity" 
     android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> 

這些新configChanges沒有出臺,直到Android 3.2的,所以你需要得到至少在Android 3.2的SDK,並在project.properties設置target=android-13編譯針對Android 3.2的SDK。

別擔心,您仍然可以在2.1及以上版本上運行您的應用程序。自1.5版以來,AdMob SDK仍然支持所有版本。爲了讓你的應用程序上運行2.1及以上,設置uses-sdk元素的android:minSdkVersion至7

最後一點:由於您使用的是ads:loadAdOnCreate屬性,在XML中,你不需要加載廣告的碼。

+0

我已更新,但它顯示我有同樣的問題...任何人都可以發送給我一個應用程序與admob集成在我的電子郵件? [email protected]請幫忙 – Javo

+0

錯誤:錯誤:不允許使用字符串類型('configChanges'的值爲'keyboard | keyboardHidden | orientation | screenLayout | uiMode | screenSize | smallestScreenSize') – Javo

+0

您是否將目標設置爲android-13?您使用的是Android 3.2的Android庫嗎? –