插屏廣告
插屏廣告是一種在應(yīng)用開啟、暫?;蛲顺鰰r以全屏的形式彈出的廣告形式,展示時機巧妙避開用戶對應(yīng)用的正常體驗,尺寸大,曝光效果好。
添加插屏廣告
1.創(chuàng)建插屏廣告對象。
創(chuàng)建InterstitialAd對象,并通過InterstitialAd類的setAdId()方法設(shè)置測試廣告位ID。
示例代碼如下:
private InterstitialAd interstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_interstitial);
interstitialAd = new InterstitialAd(this);
// "testb4znbuh3n2"為專用的測試廣告位ID,App正式發(fā)布時需要改為正式的廣告位ID
interstitialAd.setAdId("testb4znbuh3n2");
loadInterstitialAd();
}
2.獲取廣告。
調(diào)用InterstitialAd對象的loadAd()方法來獲取廣告。
示例代碼如下:
private void loadInterstitialAd() {
...
// 獲取插屏廣告
AdParam adParam = new AdParam.Builder().build();
interstitialAd.loadAd(adParam);
...
}
3.展示廣告。
調(diào)用InterstitialAd的show()方法來顯示廣告,在此之前需要調(diào)用isLoaded()方法來確認廣告已經(jīng)加載完成。
private void showInterstitialAd() {
// 顯示廣告
if (interstitialAd != null && interstitialAd.isLoaded()) {
interstitialAd.show();
} else {
Toast.makeText(this, "Ad did not load", Toast.LENGTH_SHORT).show();
}
}
4.監(jiān)聽廣告事件。
調(diào)用InterstitialAd類的setAdListener方法可以為InterstitialAd對象添加廣告事件監(jiān)聽器AdListener,并通過實現(xiàn)AdListener類中的方法來監(jiān)聽廣告事件。
...
interstitialAd.setAdListener(adListener);
...
private AdListener adListener = new AdListener() {
@Override
public void onAdLoaded() {
// 廣告獲取成功調(diào)用
...
showInterstitialAd();
}
@Override
public void onAdFailed(int errorCode) {
// 廣告獲取失敗時調(diào)用
...
}
@Override
public void onAdClosed() {
// 廣告關(guān)閉時調(diào)用
...
}
@Override
public void onAdClicked() {
// 廣告點擊時調(diào)用
...
}
@Override
public void onAdLeave() {
//廣告離開時調(diào)用
...
}
@Override
public void onAdOpened() {
// 廣告打開時調(diào)用
...
}
@Override
public void onAdImpression() {
// 廣告曝光時調(diào)用
...
}
};
測試插屏廣告
測試插屏廣告時,需要使用專門的測試廣告位ID來獲取測試廣告,以避免在測試過程中產(chǎn)生無效的廣告點擊量。測試廣告位ID僅作為功能調(diào)試使用,不可用于廣告變現(xiàn)。您需要在應(yīng)用發(fā)布前申請正式的廣告位ID,并替換測試廣告位ID。
以下表格中提供了插屏廣告的專用測試廣告位ID:
下載插屏廣告的示例代碼并運行,可以看到如下效果圖:
另外您也可以通過學習Codelab中的教程來集成插屏廣告。