2012-12-19 34 views
2

我已將AdMob廣告放入其他可運行的Android應用中,請遵循指示here。該應用程序有2個活動。其中一個只能從第一個到達。我目前正在爲此第二項活動添加廣告。我試過在onCreate方法中以編程方式創建AdView,並將適當的代碼添加到活動的XML佈局文件中。在這兩種情況下,活動都會退出第二個活動並轉到第一個活動,就好像後退按鈕一旦收到廣告(或至少通過網絡發送一些廣告數據)就被按下了。如果我更改代碼以便不發出添加請求(即使我以編程方式添加廣告,但不要撥打loadAd),或者如果我關閉了我的網絡訪問權限,則我看不到任何廣告,但我的活動也不會退出。什麼可能導致這個?爲什麼我的Android活動在AdMob加載廣告時關閉?

我已經通過了所有(我相信過時)步驟here,但這並沒有幫助。只是要清楚,如果我做錯了,我有:

  • 下載最新的Android和AdMob SDKs,至少在上週五。
  • 在default.properties中設置'target = android-17'(我不得不在項目的根目錄中創建,因爲我無法正常工作)和project.properties(這是我認爲該項目實際使用的) 。
  • 在AndroidManifest.xml中設置'android:minSdkVersion =「3」'。
  • 將庫添加到項目中(將GoogleAdMobAdsSdk-6.2.1.jar放置在項目根目錄的libs目錄中)。
  • 將從here複製的com.google.ads.AdActivity添加到AndroidManifest.xml。
  • 爲AndroidManifest.xml添加了權限,再次從同一個地方複製。
  • here複製了代碼和XML標記(和屬性),並將它們添加到我的項目中(用我的發佈者ID替換MY_AD_UNIT_ID),但我也在代碼中發出了使仿真器成爲測試設備的請求。
  • 爲廣告樣式添加了attrs.xml。我相當肯定這是過時的建議,但我仍然這樣做。我使用了this question之一,儘管我將com.admob.android.ads.AdView更改爲com.google.ads

接下來我想你會想知道如果你試圖幫助我的是LogCat所說的。不多:

09-02 14:33:34.861: I/Ads(12839): adRequestUrlHtml: <html><head><script src="http://media.admob.com/sdk-core-v40.js"></script><script>AFMA_getSdkConstants();AFMA_buildAdURL({"msid":"com.Package.Name","hl":"en","bas_off":0,"simulator":1,"preqs":0,"slotname":"a150cbaa53d9d3d","js":"afma-sdk-a-v6.2.1","isu":"B3EEABB8EE11C2BE770B684D95219ECB","u_audio":4,"cap":"m,a","cipa":0,"u_sd":1.5,"net":"ed","u_h":533,"oar":0,"session_id":"4834854664722735718","seq_num":"1","app_name":"1.android.com.Package.Name","bas_on":0,"kw":[],"u_w":320,"gnt":3,"adtest":"on","format":"320x50_mb","carrier":"310260","ad_pos":{"visible":0,"width":0,"height":0,"x":0,"y":0},"ptime":0});</script></head><body></body></html> 
09-02 14:33:35.111: D/dalvikvm(12839): GC freed 8784 objects/437720 bytes in 64ms 
09-02 14:33:37.101: I/Ads(12839): Received ad url: <url: "http://googleads.g.doubleclick.net:80/mads/gma?msid=com.Package.Name&hl=en&bas_off=0&preqs=0&js=afma-sdk-a-v6.2.1&isu=B3EEABB8EE11C2BE770B684D95219ECB&u_audio=4&cap=m%2Ca&cipa=0&u_sd=1.5&net=ed&u_h=533&oar=0&session_id=4834854664722735718&seq_num=1&app_name=1.android.com.Package.Name&bas_on=0&kw&u_w=320&gnt=3&adtest=on&format=320x50_mb&carrier=310260&ptime=0&u_so=p&output=html&region=mobile_app&u_tz=0&client_sdk=1&ex=1&slotname=a14e8f77524dde8&kw_type=broad&gsb=3g&caps=interactiveVideo_th_autoplay_mediation_sdkAdmobApiForAds_di&jsv=41" type: "admob" afmaNotifyDt: "null" useWebViewLoadUrl: "false"> 
09-02 14:33:37.111: I/Ads(12839): Request scenario: Online server request. 
09-02 14:33:38.061: I/jdwp(12861): received file descriptor 10 from ADB 
09-02 14:33:38.091: D/ddm-heap(12861): Got feature list request 

編輯: 我不認爲這將是非常有用的,但蘇萊曼的請求,汗這裏是我當前XML

<com.google.ads.AdView android:layout_width="wrap_content" 
    android:layout_height="wrap_content" ads:adUnitId="a150cbaa53d9d3d" 
    ads:adSize="SMART_BANNER" android:id="@+id/adView" ads:refreshInterval="60" 
    ads:testDevices="TEST_EMULATOR" 
    ads:loadAdOnCreate="true" /> 

我「試過的許多變化這,沒有成功

+0

發表您的.xml代碼更精確。 – 2012-12-19 07:09:29

+0

@ Edward.D.Baum:集成AdMob廣告後,我遇到了類似的問題。我的MainActivity是TabActivity,我在標籤上方顯示廣告。選擇特定標籤並導航其中的一些活動,然後重新壓縮,而不是前一個活動,該應用即將退出。我已經發布我的問題在這個鏈接http://stackoverflow.com/questions/15877461/how-to-add-or-ignore-adactivity-of-admob-ads-in-android。如果您能夠解決您的問題,請您告訴我,因爲在嘗試瞭解決方法之後,我仍然無法找到解決方案? –

+0

@IngridCooper對不起。我在某個時候固定了它,但我不再記得幾個月後的情況。我瀏覽了我的版本歷史,可能修復是在'project.properties'中爲'target'指定最新版本,但我不確定。 編輯:現在我剛剛閱讀我的問題,似乎我在修復它之前就這樣做了。我真的不知道我做了什麼。 –

回答

1

將此代碼放在您的xml:

<com.google.ads.AdView android:id="@+id/adView" 
         android:layout_width="wrap_content" 
         android:layout_alignParentTop="true" 
         android:layout_height="wrap_content" 
         ads:adUnitId="@string/my_publisher_id" 
         ads:adSize="SMART_BANNER" 
         ads:loadAdOnCreate="true"/> 

希望你有阿迪d您的發佈商ID。

將這個清單文件,你的活動後:

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

正如你說,你已經在你的項目庫添加​​JAR文件,也希望您會在您的構建路徑配置它。

希望這會有所幫助。

0

上面的代碼將工作,你可以刪除這些標籤也

android:minSdkVersion="8" 
    android:targetSdkVersion="8" 
相關問題