请输入
菜单

插屏广告

💡Tips

  • 🚀 采用预加载机制提升用户体验
  • ⚠️ 注意处理生命周期防止内存泄漏
  • 🔧 推荐使用标准化回调处理流程

1. 加载广告

java 复制代码
MCInterstitialAd mInterstitialAd = new MCInterstitialAd(activity, "your mediation unit id");
mInterstitialAd.setListener(new MCAdListener() {
    @Override
    public void onAdLoaded(MCAdInfo mcAdInfo) {
        // 加载成功回调
        // 重置重试加载次数
        retryAttempt = 0;
    }

    @Override
    public void onAdDisplayed(MCAdInfo mcAdInfo) {
        // 展示成功回调
        mInterstitialAd.loadAd();
    }

    @Override
    public void onAdHidden(MCAdInfo mcAdInfo) {
        // 广告关闭回调
        mInterstitialAd.loadAd();
    }

    @Override
    public void onAdClicked(MCAdInfo mcAdInfo) {
        // 触发点击回调
    }

    @Override
    public void onAdLoadFailed(MCError mcError) {
        // 加载失败回调
        // 我们建议您按照指数递增的方式延长重试间隔,直到达到最大延迟时间(本例为 8 秒)或最大重试次数(本例为 3 次)
        if (retryAttempt >= 3) return;
		retryAttempt++;
		long delayMillis = TimeUnit.SECONDS.toMillis((long) Math.pow(2, Math.min(3, retryAttempt)));
		new Handler().postDelayed(new Runnable() {
    		@Override
    		public void run() {
        		mInterstitialAd.loadAd();
    		}
		}, delayMillis);
    }

    @Override
    public void onAdDisplayFailed(MCAdInfo mcAdInfo, MCError mcError) {
        // 展示失败回调
        mInterstitialAd.loadAd();
    }
});

mInterstitialAd.setRevenueListener(new MCAdRevenueListener() {
    @Override
    public void onAdRevenuePaid(MCAdInfo adInfo) {
        // 可在此回调获取广告收益
    }
});

mInterstitialAd.loadAd();

2. 展示广告

java 复制代码
if (mInterstitialAd.isReady()) {
    mInterstitialAd.showAd(activity, null);
} else {
    mInterstitialAd.loadAd();
}

3. 释放资源

java 复制代码
if (mInterstitialAd != null) {
    mInterstitialAd.destroy();
}

4.设置自定义参数

java 复制代码
mInterstitialAd = new MCInterstitialAd(activity, "your mediation unit id");
mInterstitialAd.setListener(new MCAdListener() {
    ...
    @Override
    public void onAdLoaded(MCAdInfo mcAdInfo) {
        // 获取自定义参数
        mcAdInfo.getOriginJsonString();
    }
    ...
});

Map<String, Object> loadExtraParameter = new HashMap<>();
loadExtraParameter.put("test_load_extra_key", "test_load_extra_value");
mInterstitialAd.setLoadExtraParameter(loadExtraParameter);

Map<String, String> extraParameter = new HashMap<>();
extraParameter.put("test_extra_key", "test_extra_value");
mInterstitialAd.setExtraParameter(extraParameter);

mInterstitialAd.loadAd();

上一个
激励视频广告
下一个
开屏广告
最近修改: 2025-07-21Powered by