2013-11-03 143 views
2

按照文檔後關閉:https://developers.google.com/mobile-ads-sdk/docs/admob/advanced應用程序關閉插頁廣告

我從活動的要求,

interstitial.loadAd(adRequest); 
interstitial.setAdListener(this); 

而且顯示插頁時,在回調

@Override 
    public void onReceiveAd(Ad ad) { 
    Log.d("OK", "Received ad"); 
    if (ad == interstitial) { 
     interstitial.show(); 
    } 
    } 

接收但是我有很多評論,關於什麼時候廣告被用戶關閉,應用程序關閉,他們必須啓動它。我在onResumeonStop中只使用finish()onBackPressed。此外我在這個活動中使用Facebook SDK,並且有onActivityResult。當我在摩托羅拉RAZR和Nexus 7上測試我的應用程序時,一切正常。

+0

你可以發佈貓日誌或從開發者控制檯發佈應用程序崩潰信息,或者我的猜測是當用戶關閉活動「Ad」仍在運行嘗試添加if(ad!= null && ad == interstitial )'然後顯示添加,如果廣告不爲空或活動上下文不爲空,因爲如果上下文爲空,則添加會使應用程序無活動崩潰 –

回答

1

收到時不顯示插頁式廣告,導致用戶體驗很差。儘早加載並在應用程序中自然休息時顯示它(如果有的話)。

當按下後退鍵時,不需要顯式調用#finish()。 Android默認爲你處理。

我懷疑你的App關閉是由你的onBackPressed行爲引起的。刪除它,我懷疑它會自行修復。

+0

更糟糕的是在我的設備中,eveything是好的,我甚至不能調試這個。這就是我在這裏發佈的 –

+0

將調試添加到主要的Activity方法中,並找出發生了什麼。這聽起來像是在onBackPressed過程中顯式調用Activity#finish(),這會結束您的Activity(以及您的應用,如果這是Task堆棧中唯一的Activity) – William

1

當您運行interstitial.show();它也在調用活動中運行onPause()。 我也有同樣的問題,我有完成()裏面的onPause()方法。 我剛剛從onPause()方法中刪除了完成(),並且插頁式廣告不再關閉調用活動。

3

您的AndroidManifest.xml文件中有一個屬性,如android:noHistory =「true」您必須刪除它。它解決了這個問題

相關問題