我正在将AdMob集成到我的Android应用程序中。
我的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。当我在模拟器上运行时,它会显示我:
您必须在AndroidManifest.xml中使用configChanges
声明AdActivity
有人能帮助我吗?
答案 0 :(得分:2)
AdMob 4.3.1要求您在清单中的AdActivity中添加一些额外的configChanges。 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及更高版本上运行您的应用。 AdMob SDK仍然支持1.5以来的每个版本。要允许您的应用在2.1及更高版本上投放,请将uses-sdk元素的android:minSdkVersion
设置为7。
最后一点:由于您在xml中使用ads:loadAdOnCreate
属性,因此无需在代码中加载广告。