https://developers.google.com/mobile-ads-sdk/docs/admob/advanced?hl=zh
InterstitialAd
InterstitialAd
功能更丰富、也更重要,这反映在它的定义上:它不是View
,而是需要更多不同的实例化、加载和显示步骤的Object
。
不过,它的用法与AdView
非常类似:
- 导入
com.google.ads.*
- 声明实例
- 完成创建,指定一个没有被任何横幅广告使用的广告单元ID
同样,为方便起见,您最好在应用的Activity
中执行上述所有步骤。
import com.google.ads.*;
public class BannerExample extends Activity implements AdListener {
private InterstitialAd interstitial;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 制作插页式广告
interstitial = new InterstitialAd(this, MY_INTERSTITIAL_UNIT_ID);
// 创建广告请求
AdRequest adRequest = new AdRequest();
// 开始加载插页式广告
interstitial.loadAd(adRequest);
// 将广告监听器设为使用以下回调
interstitial.setAdListener(this);
}
@Override
public void onReceiveAd(Ad ad) {
Log.d("OK", "Received ad");
if (ad == interstitial) {
interstitial.show();
}
}
}
在以上示例中,我们实现了AdListener
并在系统回调onReceiveAd()
时立即展示插页式广告。有关如何使用AdListener
的详细信息,请参阅中级指南。或者,您也可以持有插页式广告,直至准备好展示为止,您可以使用isReady()
进行检查。
展示后,插页式广告将占据整个屏幕,直至用户将其关闭,届时控制权将交还给您的应用。
注意:插页式广告请求的超时时间为5秒。此超时涉及与服务器之间的套接字连接,与插页式广告的展示时长无关。