2012-04-18 74 views
1

我嘗試爲AdMob創建一個簡單示例,但是我失敗了。這是我的源代碼Android Admob - 如何在清單中聲明AdActivity

AdMobActivity

public class AdMobActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    } 
} 

main.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:id="@+id/linearLayout" 
    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="myId" 
     ads:adSize="BANNER" 
     ads:loadAdOnCreate="true" /> 
</LinearLayout> 

的Manifest.xml

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="my.ad.mob" 
android:versionCode="1" 
android:versionName="1.0" > 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="9"/> 

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <activity 
     android:name=".AdMobActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
      <activity android:name="com.google.ads.AdActivity" 
       android:configChanges="keyboard|keyboardHidden|orientation"/> 
</application> 
</manifest> 

我使用AdMob 4.3.1和Android的目標= android- 13

當我嘗試執行項目時,需要添加的地方是消息:「您必須在AndroidManifest.xml中使用configChanges聲明AdActivity」。那麼我的錯誤在哪裏?

回答

4

AdActivity必須有這些配置的變化:

keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize

+0

我嘗試這個,現在在那個地方是一個黑色的屏幕,沒有什麼(我只看到TextView女巫我添加)... Kec 2012-04-18 18:09:30

+0

你更換'ID '用你的實際adUnitId?否則,您會在日誌中顯示「無效請求」的警告。 – 2012-04-18 21:34:33

+0

在日誌中我有這樣的: onFailedToReceiveAd(廣告請求成功,但沒有廣告由於缺乏廣告資源而被退回)。我的ID很好。 – Kec 2012-04-18 22:30:54

1

而完整的答案,使用現代的AdMob來自谷歌移動服務的應該是:

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

(注意,這android:name改變)

相關問題