插屏广告是一种在应用开启、暂停或退出时以全屏的形式弹出的广告形式,展示时机巧妙避开用户对应用的正常体验,尺寸大,曝光效果好。
创建InterstitialAd对象,并通过InterstitialAd类的setAdId()方法设置测试广告位ID。
示例代码如下:
- private void loadInterstitialAd() {
- interstitialAd = new InterstitialAd(this);
- interstitialAd.setAdId("testb4znbuh3n2"); // "testb4znbuh3n2"为专用的测试广告位ID
- ...
- }
调用InterstitialAd对象的 loadAd() 方法来获取广告。
示例代码如下:
- private void loadInterstitialAd() {
- ...
- //获取插屏广告。
- AdParam adParam = new AdParam.Builder().build();
- interstitialAd.loadAd(adParam);
- ...
- }
调用InterstitialAd的show()方法来显示广告,在此之前需要调用isLoaded()方法来确认广告已经加载完成。
- private void showInterstitialAd() {
- // 显示广告
- if (interstitialAd != null && interstitialAd.isLoaded()) {
- interstitialAd.show();
- } else {
- Toast.makeText(this, "Ad did not load", Toast.LENGTH_SHORT).show();
- }
- }
调用InterstitialAd类的setAdListener方法可以为InterstitialAd对象添加广告事件监听器AdListener,并通过实现AdListener类中的方法来监听广告事件。
- ...
- interstitialAd.setAdListener(adListener);
- ...
- private AdListener adListener = new AdListener() {
- @Override
- public void onAdLoaded() {
- // 广告获取成功调用
- ...
- showInterstitialAd();
- }
- @Override
- public void onAdFailed(int errorCode) {
- // 广告获取失败时调用
- }
- @Override
- public void onAdClosed() {
- // 广告关闭时调用
- }
- @Override
- public void onAdClicked() {
- // 广告点击时调用
- }
- @Override
- public void onAdLeave() {
- //广告离开时调用
- }
- @Override
- public void onAdOpened() {
- // 广告打开时调用
- }
- @Override
- public void onAdImpression() {
- // 广告曝光时调用
- }
- };
了解详细方法,请参见API文档中的AdListener类。
测试插屏广告时,需要使用专门的测试广告位ID来获取测试广告,以避免在测试过程中产生无效的广告点击量。测试广告位ID仅作为功能调试使用,不可用于广告变现。开发者需要在应用发布前申请正式的广告位ID,并替换测试广告位ID。
以下表格中提供了插屏广告的专用测试广告位ID:
广告形式 | 展示形式 | 屏幕方向 | 尺寸 | 测试广告位ID |
插屏广告 | 图片 | 竖屏 | 1080*1620 | teste9ih9j0rc3 |
插屏广告 | 视频 | 竖屏 | 720*1080 | testb4znbuh3n2 |
下载插屏广告的示例代码并运行,可以看到如下效果图: